The Drawback of Client Side Rendering

  Рет қаралды 181,540

Ben Awad

Ben Awad

Күн бұрын

Пікірлер: 450
@navneethsubramanya.8465
@navneethsubramanya.8465 4 жыл бұрын
Ben's got 99 problems, but a girlfriend ain't one.
@phantomKE
@phantomKE 4 жыл бұрын
Bruh! He says it with a straight face
@navneethsubramanya.8465
@navneethsubramanya.8465 4 жыл бұрын
@@phantomKE I know right? He just leveled up with these jokes!
@abdulazizs824
@abdulazizs824 4 жыл бұрын
🤣🤣
@blipojones2114
@blipojones2114 4 жыл бұрын
jokes aside, he's not a bad looking dude at all, getting jacked wouldn't hurt tho, as long as he doesn't covert to a life coach and talk about it non-stop like that other coder youtuber John Sonmez.
@malvoliosf
@malvoliosf 4 жыл бұрын
He has a girlfriend in Canada.
@willmakk
@willmakk 4 жыл бұрын
Your metaphors are next level.
@keith6293
@keith6293 4 жыл бұрын
here's your big mac.
@arturfil
@arturfil 4 жыл бұрын
Aaaah I see what you did there...
@dickheadrecs
@dickheadrecs 3 жыл бұрын
🎈 🏠 🎈
@alexcc316
@alexcc316 2 жыл бұрын
"you are not a karen"
@programming2249
@programming2249 4 жыл бұрын
I avoid client-side rendering in order to save CPU cycles for cryptocurrency mining.
@r0ckinfirepower
@r0ckinfirepower 4 жыл бұрын
hahaha
@TechdubberStudios
@TechdubberStudios 4 жыл бұрын
hilarious comment! but crypto mining is an inefficient form of revenue on client's computer, see TPB case experiment.
@ezshroom
@ezshroom 4 жыл бұрын
@@TechdubberStudios It may pay less than ads, but it's many times better. I support websites that responsibly use cryptomining, and I block ads. Please, don't say that ads are better. They have never been any good to anybody's web browsing experience. Oh, and you can use cryptomining along with Arc, another earning method that does not involve ads. I'm done with Google's creepy trackers. Cryptocurrency mining is the future.
@TechdubberStudios
@TechdubberStudios 4 жыл бұрын
@@ezshroom I am genuinely 100% with you on the crypto movement. I hate ads. Always have hated them. But there are at least 2....3 big corporations that come to mind that were built on the ads business model, but with crypto mining... can't find one. And browser-crypto-mining is not exactly a new technology. I really want it to replace ads. I really do. Hate the pop-ups, spying, tracking, that's going on. And the first corpo that comes to mind would be Netflix, when considering whom should adopt the crypto model. Because the users stay on netflix and binge-watch hours and hours!
@TechdubberStudios
@TechdubberStudios 4 жыл бұрын
@@ezshroom also, do you happen to know any website/forum/subreddit focusing on browser-based mining? I would really like to join and dig in more into this subject.
@shaftsbury120
@shaftsbury120 4 жыл бұрын
Fantastic job explaining this! As always, the hilarious dry humor and "next level" metaphors help drive home points and keep things entertaining. Really helped clear up a bunch of stuff and get me pointed in the right direction. Many thanks!
@Silver_Knee
@Silver_Knee 4 жыл бұрын
I avoided serverside rendering a meta tag by registering a sub-domain, doing the serverside-rendering there and making my app only compatible with a set number of user-agents. Brilliant!
@evans8245
@evans8245 4 жыл бұрын
solutions: 0) pre-rendering with parcel or webpack 1) server side rendering
@archmad
@archmad 4 жыл бұрын
your solutions are not client side rendering. he mentioned it.
@diegogimbernat9253
@diegogimbernat9253 4 жыл бұрын
I love the tint on your glasses, it's serial killer-ish, where can i get a pair like those?
@bawad
@bawad 4 жыл бұрын
a package arrives at your door after the 3rd kill
@fev4
@fev4 4 жыл бұрын
@@bawad respect
@-Jakob-
@-Jakob- 4 жыл бұрын
They are the left-behinds after each kill. That's the way you get it.
@johnnamtae9610
@johnnamtae9610 4 жыл бұрын
@@bawad quick scope no scopes?
@flamendless
@flamendless 3 жыл бұрын
Those tints are wiped off blood from killing
@stephenyin3509
@stephenyin3509 4 жыл бұрын
Love the joke about girlfriend and client side rendering at the beginning
@PaulSebastianM
@PaulSebastianM 4 жыл бұрын
For your sake and ours, I hope you DON'T get a girlfriend too soon.
@ufufu001
@ufufu001 4 жыл бұрын
the girlfriend problem might be solved if you stop walking around wearing asexual flag shirts
@SayWhat6187
@SayWhat6187 4 жыл бұрын
hahaha
@williamboshi1855
@williamboshi1855 4 жыл бұрын
lmao, good catch, respect
@travistrue2008
@travistrue2008 4 жыл бұрын
He's just playing hard to get. Karen gets it.
@johnyepthomi892
@johnyepthomi892 4 жыл бұрын
But with this if he ever gets one, she will be the right one. Lol
@ragnarok7976
@ragnarok7976 4 жыл бұрын
He do check a lot of aesthetic boxes from the virgin meme... Though I probably do too 😆
@gelismissuriyeli4440
@gelismissuriyeli4440 2 жыл бұрын
This was the best explanation video I've seen on the matter... Kudos to you Mister...
@arpowers
@arpowers 4 жыл бұрын
I love how Ben roasts Angular devs. I thought of that carrot farmer line off and on all day and cracked up every time.
@alldecentnamestaken
@alldecentnamestaken 4 жыл бұрын
"It's like I spent a bunch of time building a house and now I want that house to fly." LMAO
@laenprogrammation
@laenprogrammation 4 жыл бұрын
there is a workaround : just add conditional tag in the small server that builds your page. you can still use client side rendering except for meta tags
@stuartgreen5217
@stuartgreen5217 4 жыл бұрын
I guess u never heard of prerender.io been using it for years
@angry_moose94
@angry_moose94 4 жыл бұрын
Lol just killed the whole argument. Never heard of it before. Just goes to say that tech is exponential. Wonder if it will cause the cosmic crash eventually.
@ayushkhanduri2384
@ayushkhanduri2384 4 жыл бұрын
yep yep yep , you just commented before me
@rodrigoabselcid
@rodrigoabselcid 4 жыл бұрын
​@@ayushkhanduri2384 same case, I just searched prerender before I add a comment about it to check if it's already mentioned and here it was.
@Saurabhandsonu1994
@Saurabhandsonu1994 4 жыл бұрын
🤯
@Rssks
@Rssks 4 жыл бұрын
2:05 i do it this way: Server serves response for parsers (meta, og, schema, jsonld and plain html content) and then comes along js that structures it up and takes over routing from this point, so when you navigate you actually don't "refresh"
@tonylion2680
@tonylion2680 4 жыл бұрын
I´ve been watching your videos and yes, the quality of the content is always awesome, new suscriber
@waynevanson277
@waynevanson277 4 жыл бұрын
A solution to your problem could be to build a single page application, with each end point for the app being pre rendered. It's basically jamstack. Once a user loads one page, the others do not need to be loaded.
@roshanican504
@roshanican504 3 жыл бұрын
You make my day better
@johnnietirado6131
@johnnietirado6131 4 жыл бұрын
Had this issue while using a MeteorJS website running with ReactJs as the client side is that we created a crawler ( i think there is an npm project for this) that would go to every page, render it and save it on our DB. When a non-human (Google) would access the site it would served this rendered HTML, making it SEO friendly. Basically our server would use the User Agent to define what type of content the user would get served. Hope this help
@rajatrao5632
@rajatrao5632 2 жыл бұрын
can you please explain what do you mean by 'render it and save it on db' , do you mean like render the dom elements and attach to html and store it in some link and add that link in db , or what exactly are you storing in db, if this is the case wouldn't it be too much for pages which are dynamic like /rob/photos, /sam/photos and likewise to be stored in db or am i missing something
@cedric_lfbr
@cedric_lfbr 4 жыл бұрын
I had to do that once, I used a Lambda function since it was hosted on AWS, and the function intercepts the CloudFront distribution request and updates the HTML if the request comes from a robot, adding the OpenGraph tags.
@TimeoutMegagameplays
@TimeoutMegagameplays 4 жыл бұрын
Solution: NextJS, Angular Universal, Nuxt, etc.
@jpsimons
@jpsimons 4 жыл бұрын
Also check out the create-exact-app npm (that's exact not react). Like NextJS but Express-forward design, full control at the server side level of what's going on.
@brandon.duffany
@brandon.duffany 4 жыл бұрын
@@jpsimons Just FYI, next.js also gives you full server side control. You can just run next as a library within an express server. In my experience, it's super ergonomic while preserving the state-of-the-art benefits of next (code splitting, automatic static optimization, incremental static generation, etc.). Having said that, I have not yet checked out create-exact-app, and am not sure how it differs from nextjs.
@angshu7589
@angshu7589 4 жыл бұрын
Why do I not like the sound of Angular Universal?
@milorad3232
@milorad3232 4 жыл бұрын
@@angshu7589 because you are not carrot farmer. Although color of your profile picture kinda resembles the carrot :D
@TimeoutMegagameplays
@TimeoutMegagameplays 4 жыл бұрын
@Adithya R Svelte Sapper is still in early development. I love Svelte, but Sapper is still far away from production-ready
@kierangill4967
@kierangill4967 4 жыл бұрын
Sapper + svelte gives you the best of both worlds
@ytlongbeach
@ytlongbeach 4 жыл бұрын
Our course -- I followed and understood all the way to the end. This is because I'm an unemployed ex-Tech Lead [who has never worked at a FANG company], and a thousandaire.
@ChrisStayte
@ChrisStayte 4 жыл бұрын
Thanks Man!
@jinxblaze
@jinxblaze 4 жыл бұрын
u watched a 9 min video in 3 ?
@ufufu001
@ufufu001 4 жыл бұрын
@@jinxblaze that is what true supporters do: they appreciate the content even before watching it. it's beautiful.
@ChrisStayte
@ChrisStayte 4 жыл бұрын
@@jinxblaze TRIPPLE SPEED
@jinxblaze
@jinxblaze 4 жыл бұрын
@@ChrisStayte xD
@archmad
@archmad 4 жыл бұрын
I had similar issue. good thing you found a better solution.
@zBrain0
@zBrain0 2 жыл бұрын
This video is 2 years old, I don't know if it existed when you made it but today there is a tool called puppeteer that uses a headless Chrome browser to actually pre-render your HTML that you can feed to bots and still feed the client side rendered to humans
@jimchapman4579
@jimchapman4579 Жыл бұрын
Greate video! I use Laravel on the server side to serve up everything. Static html pages and React apps or a combo of both. It's easy to embed a react app within a .blade template file. Meanwhile Laravel takes care of everything else, like API services, user registration and authentication, etc. Best of both worlds.
@samsonbrody6308
@samsonbrody6308 3 жыл бұрын
Great video. Trying to wrap my head around server side rendering and this video definitely helped
@dawid_dahl
@dawid_dahl 4 жыл бұрын
This channel is slowly becoming one of my favorites on KZbin! 😄
@jvcmarc
@jvcmarc 4 жыл бұрын
this is actually the first time I understood the difference between client side and server side rendering
@CarlosMartinezTech
@CarlosMartinezTech 4 жыл бұрын
I like how you explain, well done. Thank you for the quality content.
@hannessteffenhagen61
@hannessteffenhagen61 4 жыл бұрын
The problem with client side rendering is mostly that most of the time it's used for something that doesn't need it. Most websites are mostly static.
@victorbjorklund
@victorbjorklund 4 жыл бұрын
Nice solution. Only downside guess would be that Google wants you to show the same content to their bot as the user. But probably doesn't matter if you don't want to index those pages.
@0dyss3us51
@0dyss3us51 4 жыл бұрын
You are hilarious and informative my dude haha, relatable. And damn dude the lenght of your link
@uskro
@uskro 4 жыл бұрын
Facebook's user agent is there for the facebook app browser as well.
@wcandillon
@wcandillon 4 жыл бұрын
Very useful, thank you for pointing to react-snap. Happy Hacking Ben 🙌🏻
@rahulramsaha7266
@rahulramsaha7266 4 жыл бұрын
I was just watching one of your videos on react native animation earlier xD Keep up the good job 🔥
@AndreiNedelus
@AndreiNedelus 4 жыл бұрын
Hey I saw Wes Bos in one of his videos, he used cloud functions to generate the preview and puppeteer i guess to take a screenshot of the url
@PaulSebastianM
@PaulSebastianM 4 жыл бұрын
If you manage the web server, you could use the web server's router to do the same exact hack you described without the need for a different subdomain, just a route that checks the user-agent of the client and returns different HTML based on it.
@EPIC-w6k
@EPIC-w6k 4 жыл бұрын
Woah! My self esteem skyrocketed because I managed to keep up with you until the end :D Aside from that, your content is top notch, keep it coming man.
@drewlee7435
@drewlee7435 Жыл бұрын
Best explanation, Ever.
@salshouts
@salshouts 4 жыл бұрын
This helped me alot! I am working on a project and my backend was almost finished. I was using create-react-app with router but switched over to next.js! Thanks alot
@squashtomato
@squashtomato 3 жыл бұрын
I think you could easily do this in net core. In the startup class, in the configure for routing, you could filter each route with the correct meta tags. You could make this an extension and bing bang bosh, neat tidy job done
@classik305
@classik305 4 жыл бұрын
Subbed for the consistent Angular claps 💀
@maasteeve
@maasteeve 4 жыл бұрын
The problem I see with the magic link is that when a user just copies the url instead of pressing a share button to get the special share.* link that there will not be meta tags and when you do use the special share.* then there are meta tags. And I think most users will probably just copy the url they are on now instead of looking for a share button
@ticos.thepsourinthone9150
@ticos.thepsourinthone9150 4 жыл бұрын
This video was hilariously informational, Ben! Thanks! Haha
@DubstepRS
@DubstepRS 4 жыл бұрын
The preview still won't work when users copy paste the link directly from the browser url bar
@BribedStudios
@BribedStudios 4 жыл бұрын
Nice GatsbyJS colorway on that shirt 🤙
@timtim9o5
@timtim9o5 4 жыл бұрын
I'm about that carrot farmer lifestyle tbh
@mohdhaziq9859
@mohdhaziq9859 4 жыл бұрын
me too 😦, that's why in my free time will enjoy build something else
@luismpcunha
@luismpcunha 4 жыл бұрын
@@mohdhaziq9859 I like the carrot life tho, has worked well for me
@fun6789
@fun6789 4 жыл бұрын
I think he meant that we should use Next / Nuxt from the beginning. I used to face these problems and since then I use Nuxt for every project and never worry about these problems again
@ab.3800
@ab.3800 2 жыл бұрын
I was experimenting with client side rendering in 2012, it would generate the page based on json
@nilanjanmitra7459
@nilanjanmitra7459 4 жыл бұрын
I use EJS and it allows for variables to be passed before sending the HTML to the client, so that can allow you to change the values in the meta tags.
@sajedsoliman4780
@sajedsoliman4780 3 жыл бұрын
You're great bro 💖💖
@deepdivedevs100
@deepdivedevs100 4 жыл бұрын
i think we can use helmet in CRA also by generating the data for meta in server side
@JohnEricOrolfo
@JohnEricOrolfo 3 жыл бұрын
my solution for this is: 1. set a lambda as an index 2. on the index lambda, it should run a headless tool (like a headless chrome) to render the page if the request is a bot, else just serve the raw js
@georgebryant3799
@georgebryant3799 4 жыл бұрын
I think the problem with your solution is that when a user shares a link, they aren't going to make sure they have your subdomain on the front, they will just share the link to the main site, so its likely that only your 'official' posts where _you_ are the one sharing the link will have the subdomain required
@tunyaa
@tunyaa 4 жыл бұрын
netlify has a free experimental feature called pre-rendering, for me, it works with Facebook, it parses the right meta tags automatically with pictures also. My content comes from a backend via graphql and apollo. meta is being set with react helmet, the page is handled by react-router, and it's a create react app project. Hope this helps. You can also do prerendering very very easily with react-snap package, but you need to rebuild when data changes. (PS. Thanks for your work, I really like your videos)
@vorname1485
@vorname1485 4 жыл бұрын
Why do you want another domain for that. The server that delivers the app index.html could also deliver the meta response instead, based on user agent. One problem in both situations you could get (separate service or combined), is that the bots make checks whether the content they see is different to a regular user. Whether any of them does it, I don't know, but I would check this possibility.
@ronrofe153
@ronrofe153 4 жыл бұрын
Did you just describe Rendertron?
@Manivelarino
@Manivelarino 4 жыл бұрын
I just put my meta tags with variables like %PAGE_NAME% %PAGE_IMAGE% and replace these later while serving the page with express. doesn't work while client-side routing but It works for link previews.
@maxwellmuhanda7940
@maxwellmuhanda7940 2 жыл бұрын
this was so easy to understand am subscribed
@shriharis1498
@shriharis1498 4 жыл бұрын
Sorry I'm new here, and I've noticed that Ben clearly hates Angular. Can someone give a quick background please???
@gompro
@gompro 4 жыл бұрын
Very useful video as always
@arthurbruel5545
@arthurbruel5545 4 жыл бұрын
If the only thing that needs to change is the meta tags (not the rendered bits), you can also modify the html before returning it to the client, inserting the relevant meta tags. It will probably lead to performance problems, but you could also perform an if condition on the referrer of the request to determine if you should perform such modifications.
@cauebahia
@cauebahia 4 жыл бұрын
It works! I do exactly that with my react web SPAs. I use firebase and cloud functions to detect user agents and serve SSR version on the fly to robots and CSR version to users. This is also important to SEO indexing, cause some robots won't run any JS and expect html-only responses. Really enjoy your videos.
@leisiyox
@leisiyox 4 жыл бұрын
What about some prerender.io ?
@cauebahia
@cauebahia 4 жыл бұрын
@@leisiyox I thought about using it, but never tried it. Don't know how well it works. It would also cost more than my current firebase cloud function solution.
@leisiyox
@leisiyox 4 жыл бұрын
​@@cauebahia what are the conditions that you recommend using firebase? I thought about using it but I seek guidence
@cauebahia
@cauebahia 4 жыл бұрын
@@leisiyox I like that they integrate lots of services in a single solution. When you create a firebase project, you instantly have access to file storage, hosting, database, authentication, and some other stuff that makes it really easy. I also like that Firestore has real-time listeners for your data. Really good for a client side rendered app. Also really like their documentation and the fact that you can easily access other Google Cloud services and API. There are many videos online about it. Check it out.
@DK-ox7ze
@DK-ox7ze 3 жыл бұрын
Nice post. However I am curious as to why these FB bots can't read a client rendered app? I am sure that these bots are ultimately rendering the app on a web engine/browser, because they need to generate the preview of the rendered content. The static html will also most likely load some resources like CSS and JS over the network (unless the bot expects an inlined css/js), so it's not going to be an instant preview. So maybe the limitation is not technical but rather functional, in that the bot is probably not willing to wait too long for the page to load (which is the case with most client rendered apps)?
@HeitorYT
@HeitorYT 2 жыл бұрын
Can't we have SSR that hydrates in the client?
@pedroserapio8075
@pedroserapio8075 4 жыл бұрын
Gatsby also solves the React single-page problem, since we can generate all the individual HTML, CSS, and JS pages.
@HYKANTUS
@HYKANTUS 4 жыл бұрын
The drawbacks of not understanding the title (and watching anyways)
@mihaijiplea8371
@mihaijiplea8371 4 жыл бұрын
I think one issue is that most of the link preview code nowadays is kind of stuck in a pre-1page application world. Apart from making a curl request to the website and getting the HTML, the preview feature should also render it and stop assuming everybody's using server-side rendering. This does sound like it gets more into the "create a google scraper" type of situation, but if in-turn we're talking about a client-side rendered website trying to create a preview for another client-side rendered website, all the rendering is happening on the client so the server doesn't take much load at all.
@kirasmith1147
@kirasmith1147 4 жыл бұрын
I just used a node.js express server to host compiled create-react-app, this way you can modify the page and add meta tags if needed before serving the page. Sort of a mix of server and client side rendering as he said.
@mihailazar2487
@mihailazar2487 3 жыл бұрын
08:44 **Theoretically, I think it should work** that there is a fountain of wizdom
@josephlardner-burke9400
@josephlardner-burke9400 4 жыл бұрын
Why wouldn’t you just serve this over the server on a different port? As in send the result as a when someone searches that route?
@NLNTZ
@NLNTZ 4 жыл бұрын
I think your points on pre-rendering are slightly off. Not mentioning tools like Gatsby, Scully, or Gridsome is a miss as they can be used to render those dynamic routes you say cannot be pre-rendered. It's worth mentioning that JAMStack options are becoming really incredible for developers and give you the same benefits as server side rendering out of the box.
@dremiq6670
@dremiq6670 2 жыл бұрын
3:17 thanks for explaning this here lol, i was like why wouldn't you be able to just stick the meta tags in the requested html
@tarekali7064
@tarekali7064 4 жыл бұрын
Benawad officially a CHAD?!
@ekaansh
@ekaansh 4 жыл бұрын
has there been a followup to this? video/repo?
@Jamiered18
@Jamiered18 4 жыл бұрын
I done this in a similar way. Except the share link page didn't check any user agent headers. It just featured a JavaScript redirect to the normal URL. Bots don't run JavaScript, don't redirect, they get the meta tags they need. User does run JS, redirects to the main SPA. And, for good measure, a fallback clickable link on the share page shows in case redirecting is blocked.
@mulletman1705
@mulletman1705 4 жыл бұрын
Seriously a balloon helicopter, that was the best analogy you could come up with ?
@mateusnascimento1989
@mateusnascimento1989 4 жыл бұрын
Dude I was literally searching the name of this OPG yesterday. Thanks, dude!
@calvinlucian387
@calvinlucian387 4 жыл бұрын
Your hate for angular is legendary. I love it.
@rishabhrathod888
@rishabhrathod888 4 жыл бұрын
For some wierd cases like mine where only /particularRoute need to work like SSR what i actually tried was hosted gatsby project in particular route of CRA project and it worked just need to handle few re-routing cases
@mayurbhor2231
@mayurbhor2231 4 жыл бұрын
No one roasts angular like Ben
@DevinRhode2
@DevinRhode2 4 жыл бұрын
The pre-built html approach could work. If someone tries to visit a url while something is still building, you could serve up a special "page is still being built" page... one benefit here could be that, in 20 years when a website is taken down, you have all this pre-built static html, and it's very cheap (probably free) to host that.
@DevinRhode2
@DevinRhode2 4 жыл бұрын
Or when there's another sea-change with technology, MAYBE it's easier to migrate to something new, but I'm not sure, would depend on the specific situation.
@mortezatourani7772
@mortezatourani7772 4 жыл бұрын
I liked the idea however, I think it is still good to have SSR for all users or maybe SEO as well. Would you share your ideas on uFrontends, too? Are you preparing some sort of tutorial on that or what?
@twistedbydsign99
@twistedbydsign99 4 жыл бұрын
The solution you came up is just the thin end of the wedge, its just the beginning.
@alexsilny5748
@alexsilny5748 4 жыл бұрын
I had the same issue last week and also was thinking about moving to nextjs, but having a separate domain and server makes a lot more sense.
@happysloth91
@happysloth91 4 жыл бұрын
well Next js or any other SSR solutions doesn't mean you're gonna use one server for the backend and the front-end.
@alirezvani9149
@alirezvani9149 3 жыл бұрын
Now you can make static pages for you dynamic frequently updated pages with Nextjs, How it works's is that it looks at the requested page and if it is present from the build time, sends it back and if it is not built during build time, builds on the go(run time) and adds it to the built pages for the next request. pretty amazing and game changing !
@vinzer72frie
@vinzer72frie 4 жыл бұрын
McLovin teaching javascript
@SmujMaiku
@SmujMaiku 4 жыл бұрын
I had this problem once but my focus was towards crawlers. I ended up using some php to "render" the important bits like title, descriptions and links. Then the javascript would remove those elements and do the single page app business. It was back in carrot farmer code days but I'm sure happy coders can accomplish this just as well.
@brianevans4
@brianevans4 4 жыл бұрын
I think I might try react snap. That sounds good. Pre rendering on every build. Because often the layout of a page is the same even of the content changes. What do I mean by that: every reddit post will have the logo, the side bar, the footer and a div in the middle which contains the contents of the post. So you can prerender all that with an empty div, and then Hydrate it. Even with user generated content (as long as it is simple and consistent) you could prerender. Thanks for the video
@jhonasn
@jhonasn 4 жыл бұрын
english is not my first language so i understanded only on second time i watched this, thanks for de vid i've not dev a site with link preview yet, very good to know it!
@ntcc2821
@ntcc2821 Жыл бұрын
I like your humour😂😂...great lesson as well
@rickyu1978
@rickyu1978 4 жыл бұрын
Looking for exactly this solution. Was thinking of using aws api gateway to check the routes and then redirect based on headers. Social og links are super important for shareability..
@hnasr
@hnasr 4 жыл бұрын
Metaphors killing me 😂
@radulaski
@radulaski 4 жыл бұрын
Google's crawler does evaluate JS?
@m1dway
@m1dway 4 жыл бұрын
Your solution at the end is valid. Use reverse proxy to detect the request, and forward them appropriately. However, it's best to use SSR from the beginning if that's your intention.
@isfland
@isfland 4 жыл бұрын
Another problem I struggle frequently with client side rendering is content indexing by search engines. There is a chance that Goggle will index js-generated content, but it depends. Other search engines will not even give a try.
@falxie_
@falxie_ 4 жыл бұрын
My company has a massive CRA project that could benefit a conversion to NextJS, but we rely so much on browser globals outside of effects
@gunjanrajtiwari1435
@gunjanrajtiwari1435 4 жыл бұрын
how to go back and forward if we are doing client side rendering?
Do you REALLY need SSR?
18:15
Theo - t3․gg
Рет қаралды 183 М.
How to Roll Your Own Auth
13:05
Ben Awad
Рет қаралды 125 М.
Сестра обхитрила!
00:17
Victoria Portfolio
Рет қаралды 958 М.
To Brawl AND BEYOND!
00:51
Brawl Stars
Рет қаралды 17 МЛН
IL'HAN - Qalqam | Official Music Video
03:17
Ilhan Ihsanov
Рет қаралды 700 М.
WTF Do These Even Mean
13:44
Web Dev Simplified
Рет қаралды 101 М.
How I Made a Game in React Native
12:01
Ben Awad
Рет қаралды 52 М.
10 Rendering Patterns for Web Apps
6:55
Beyond Fireship
Рет қаралды 347 М.
Secure your Cloud Services with TLS X.509 Client Certificates
15:57
Is Blazor Better than React?
14:25
Gavin Lon
Рет қаралды 56 М.
Best of CES 2025
14:50
The Verge
Рет қаралды 613 М.
Constructors Are Broken
18:16
Logan Smith
Рет қаралды 117 М.