Check response status when fetch wasm for streaming instantiate. #8720
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Check if
fetch()
was successful during wasm loading. Otherwise returnResponse
with null body to trigger fallback logic.Fixes #8091
Technical changes
Check if
response.ok
is true. Otherwise construct empty Response object with all headers and statuses from original response.According to https://developer.mozilla.org/en-US/docs/Web/API/Response/body#value response.body can be empty. I tried to simulate it in following steps:
wasm streaming instantiation failed! TypeError: WebAssembly: Response has unsupported MIME type 'text/html;charset=utf-8' expected 'application/wasm'
wasm streaming instantiation failed! TypeError: WebAssembly: Response does not have ok status
(it was Response object that constructed asnew Response(null, response)
P.S. I can't reproduce situation when response.body is undefined. In case of 404 it was filled with html page content.
PR checklist
Example of a well written PR description:
### Technical changes
Technical changes:
Technical notes: