Structured Content 2022: Join our conference to explore fresh perspectives on content and digital experiences →

Hey guys, does sanity have some kind of caching mechanism on request? im using the `@sanity/client` in a rn app; the issue is, when I edit a document in sanity and then attempt...

10 replies
Last updated: Jan 3, 2021

Hey guys, does sanity have some kind of caching mechanism on request?im using the

@sanity/client
in a rn app;the issue is, when I edit a document in sanity and then attempt to fetch that document again, I have to run the fetch exactly two times for it to update; any idea why it doesn't update the first time? (I tried waiting over 5 minutes and will not work on the first fetch)

Jan 3, 2021, 12:56 PM

If you use Nextjs getStaticProps with revalidate, the cache is in Nextjs. The first hit will always serve from cache and the next hit serves the updated response

Jan 3, 2021, 1:59 PM

as far as I understand nextjs is used on react web; I don't have a nextjs dependency in my project, neither does the sanity client; but I think you're definitely on the right track

Jan 3, 2021, 3:39 PM

Are you using the APICDN by any chance? Urls would be like projectid.apicdn.sanity.io/ ...

Jan 3, 2021, 4:56 PM

yes

user A
that was it, thank you

Jan 3, 2021, 5:20 PM

although I had this page opened https://www.sanity.io/docs/api-cdn I didn't see the configuration

usesCdn: true

Jan 3, 2021, 5:20 PM

it doesn't seem to be worth it though; will speak to my client and explain what's happening there

Jan 3, 2021, 5:21 PM

just out of curiosity, im assuming most of the users use the apicdn, the tradeoffs doesn't seem that big

Jan 3, 2021, 5:21 PM

It varies a lot actually. If you can live with slightly stale data we highly recommend it for robustness and latency. But it is a tradeoff against freshness.

Jan 3, 2021, 5:23 PM

Using the api will hit our document stores every time.

Jan 3, 2021, 5:24 PM

stale-while-revalidate
is set to 600 seconds, so that is how old content we serve while fetching fresh in the background. If it is older than 600s you will have to wait for fresh content.

Jan 3, 2021, 5:34 PM

Sanity.io: Get the most out of your content

Sanity.io is a platform to build websites and applications. It comes with great APIs that let you treat content like data. Give your team exactly what they need to edit and publish their content with the customizable Sanity Studio. Get real-time collaboration out of the box. Sanity.io comes with a hosted datastore for JSON documents, query languages like GROQ and GraphQL, CDNs, on-demand asset transformations, presentation agnostic rich text, plugins, and much more.

Don't compromise on developer experience. Join thousands of developers and trusted companies and power your content with Sanity.io. Free to get started, pay-as-you-go on all plans.