Voor een JavaScript-applicatie komen de afbeeldingen van een andere server op een subdomein. Deze afbeeldingen staan op een vaste locatie. De afbeeldingen worden via het Image object ingeladen. Als de gevraagde afbeelding niet bestaat wordt de request doorgestuurd via mod_rewrite naar het generatiescript. Bij het doorsturen verandert de URL met een 302.
Indien ik geen Access-Control-Allow-Origin (ACAO) instel krijg ik bij reeds bestaande afbeeldingen naar verwachting de melding: Access to Image at 'http://bestanden.domein.nl/afbeelding.jpg' from origin 'http://domein.nl' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://domein.nl' is therefore not allowed access.
Zodra ik de header ACAO * en in mijn JavaScript img.crossOrigin = 'anonymous' toevoeg werken alle bestaande afbeeldingen. Maar de afbeeldingen die nog niet bestaan worden doorgestuurd en daar krijg ik nog steeds een melding voor, maar deze wijkt af van de eerste melding: Redirect from 'http://bestanden.domein.nl/afbeelding.jpg' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://domein.nl' is therefore not allowed access. Het gaat nu dus nog specifiek om de redirect.
Ik heb alle combinaties geprobeerd met Access-Control-Allow-Origin, Access-Control-Allow-Headers en Access-Control-Allow-Methods zonder resultaat. Via Google heb ik diverse oplossingen gevonden die niet werkten voor mijn situatie.
Indien ik geen Access-Control-Allow-Origin (ACAO) instel krijg ik bij reeds bestaande afbeeldingen naar verwachting de melding: Access to Image at 'http://bestanden.domein.nl/afbeelding.jpg' from origin 'http://domein.nl' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://domein.nl' is therefore not allowed access.
Zodra ik de header ACAO * en in mijn JavaScript img.crossOrigin = 'anonymous' toevoeg werken alle bestaande afbeeldingen. Maar de afbeeldingen die nog niet bestaan worden doorgestuurd en daar krijg ik nog steeds een melding voor, maar deze wijkt af van de eerste melding: Redirect from 'http://bestanden.domein.nl/afbeelding.jpg' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://domein.nl' is therefore not allowed access. Het gaat nu dus nog specifiek om de redirect.
Ik heb alle combinaties geprobeerd met Access-Control-Allow-Origin, Access-Control-Allow-Headers en Access-Control-Allow-Methods zonder resultaat. Via Google heb ik diverse oplossingen gevonden die niet werkten voor mijn situatie.
- https://www.google.nl/sea...n+blocked+by+CORS+policy"
- Wikipedia: Cross-origin resource sharing
- https://www.html5rocks.com/en/tutorials/cors/
- https://www.w3.org/TR/cors/#simple-cross-origin-request-0
