WebForms: NetworkError when attempting to fetch resource

1. What is the issue? Please be detailed.
I have a draft form (unpublished) in Central was working fine. I came back with some minor updates (a few days later) and when testing in browser I got the:
NetworkError when attempting to fetch resource. (Web Forms)
When I switch to Enekto the form loads and works as expected (except of course the select_one with appearance map isn't rendered, obviously!

2. What steps can we take to reproduce this issue?
I have no idea what caused this and the error doesn't give me enough information to replicate - so if there are logs I might be able to access, please let me know and I'll search on the server. I have not made any changes to the server in the meantime.

3. What have you tried to fix the issue?
I've tried undoing the changes in Excel and uploading the form again in the same Draft, changed some external csv lookups to internal choices. No change. I haven't tried deleting the form from the ODK Central and starting from scratch, yet.

I feel like I've done something fundamentally and simply stupid to break it but it's hiding in plain site (!)

versions:

3e9b78f4c7d1636982643585759c3d8a904904e3 (v2026.2.0-1-g3e9b78f)
 0000000000000000000000000000000000000000 client (v2026.2.0)
 bee93414a2215bd73d7f371113c6640c66d90c95 server (v2026.2.0)

It's tricky to debug without working out exactly which resource is failing to download. Here are a few things to try...

Clear your browser cache and try again, or try a different browser.

If that doesn't work can you share a screenshot of the error? That'll help me figure out which part of the code is failing to load the resource.

Does your form have any attached images, entities, csvs, etc?

If you feel comfortable with the browser's dev tools, press F12 and open the Network tab, then refresh, you should see one (or more) network requests have failed. If you could share the URL of that request that'll really narrow it down. There may also be useful information in the Console tab.

Thanks for your suggestions

My thoughts exactly - the error provides no clue (which would be really helpful if it could, but might be very hard to implement :innocent:)

So I followed your advice and hit the F12 / Network...

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at .... [the url is to my s3 storage] ... (Reason: CORS header ‘Access-Control-Allow-Origin’ missing). Status code: 200.

The form is trying to load a csv - which is named in that link (not sharing publicly for security reasons).

But Enketo can reach that csv and the form works as expected (except as noted above, it doesn't show me the map, and that is a key feature of this form!).

It might explain why I can test new forms with WebForms, but when I go back the next day (after Central has transferred attachments to S3) they don't work... If the attachment (image or csv) is still in the database this error doesn't appear.

I have just tested this idea (remembering about the hash-signature of an attachment, so just uploading the same file makes no difference!). When I upload an edited version of the csv, the form loads as expected. So there is definitely a recurring problem I need to fix on my server if I'm to use WebForms for data collection, not just draft testing, as has been the case so far.

Aha! I've just used the Ask AI help in docs and found a possible answer:

for example, a known bug where Sentry was attaching trace headers to attachment requests, which caused images stored in S3 to fail to load. This was fixed in Central v2026.2.1

I'll try the update and see... I was holding off as there were a few minor updates trickling out.

Hmm...

I have updated ODK Central:

versions:
734f5fc2e3feec7d5c5b912cc63590b1a3098253 (v2026.2.4-1-g734f5fc)
0000000000000000000000000000000000000000 client (v2026.2.4)
7aa74c5ec5d90189aa2482f57c041ea4ce9efbfd server (v2026.2.2)

I have loaded the form again and it works, but of course the csv file is held locally...

So I opened other forms that have images and csv files (they are live and only used by Collect).

I get the same issue as before with the (Reason: CORS header ‘Access-Control-Allow-Origin’ missing) in each case.

I can share the details privately if that helps.

Thanks for that! @LN pointed me to the missing piece of documentation in this issue. You need to configure your S3 bucket to allow Web Forms access. That should resolve the CORS issue.