Improve API endpoint compatibility by preventing CORS preflight request. #17
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.
The
Content-Type
andReferrer
headers cause browsers implementingCORS to send a preflight (
OPTION
) request. If we remove them, ourGET
requests will be "simple", and no longer trigger a preflight.Preventing the preflight and using a "simple" request makes it easier to
work with endpoints that do not implement an
OPTIONS
response, butnevertheless do set
Access-Control-Allow-Origin
on theGET
response.(Especially development environments.)
We do not need
Content-Type
because ourGET
requests have nopayload.
Users requiring
Referrer
may add it explicitly with<autocomplete :request-headers="...">
.https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS
https://developer.mozilla.org/en-US/docs/Web/API/Request/referrerPolicy
Tested on latest Chrome, Firefox and Safari. Should be fine back to
June/July 2016 (Chrome 52, Firefox 47). Note, the MDN browser compat
info for Request.referrerPolicy Safari seems incomplete: refererPolicy
does work.