4 ms·
User-specific? Why isn't the page excluding the header part cached separately, or am I missing something?
by qingdao99 4y ago
User-specific? Why isn't the page excluding the header part cached separately, or am I missing something?
- foldr 4y agoPresumably basic stuff like showing whether or not you've upvoted a comment and showing your own comments differently to other people's.
- tuukkah 4y agoIt would be cheaper to render those afterwards client-side given a list of comment ids that the logged-in user has upvoted.
- proto_lambda 4y agoThat would require users to run client-side scripts for basic site functionality.
- yardstick 4y agoUpvoting is a client-side script already.
- proto_lambda 4y agoAre you sure? With JS disabled, the vote arrows are simple links for me that work as expected.
- jraph 4y agoIt's both! :-) That's a perfect example of graceful degradation / progressive enhancement. A JS event on the html element cancels clicks on those links and handles them in JS with AJAX so the page is not reloaded.
- tuukkah 4y agoRender server-side (or on the edge) for those who don't run client-side scripts.
- qingdao99 4y agoCan that be detected by the site? (in a non-hacky way)
- tuukkah 4y agoYes, by including code that if run, alters what happens. For example, you can add JavaScript code that handles the "comments" links on the front page in the new way (fetch the data and render it). For those browsers that don't run the code, everything will continue to work in the old way (links will cause a request to the server, which will render the comments).