LOADING

Type to search


Share

Yine hızlı bir çözüm yazısı ile beraber. CORS Policy sorunu yüzünden şu yazıyı hepiniz görmüşsünüzdür.

Access to XMLHttpRequest at ‘https://www. xxxxxx’ from origin ‘http://www. xxxxx’ has been blocked by CORS policy: Response to preflight request doesn’t pass access control check: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.

İşte bu sorunun windows server’larda Classic ASP ile çözümü oldukça basit. Tabii konu derinlemesine güvenlik içeriyor fakat özetle bu soruna kısadan bir çözüm yolunu web.config dosyası ile nasıl yaparsınız; işte hazır bir web.config dosyası

<?xml version=”1.0″ encoding=”UTF-8″?>
<configuration>
<system.webServer>
<httpProtocol>
<customHeaders>
<add name=”Access-Control-Allow-Origin” value=”*” />
<add name=”Access-Control-Request-Method” value=”POST, GET, OPTIONS, PUT, DELETE” />
<add name=”Access-Control-Allow-Headers” value=”Authorization” />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>

Eğer bir servisinizde CORS hatası ile karşılaşıyorsanız, servisinizi sunduğunuz temel web.config ayarı yukarıda ki gibi olmalıdır. Bu ayarlar ile POST, GET, OPTIONS, PUT ve DELETE methodlarına izin verirsiniz. Burada önemli olan bir ayrıntı OPTIONS methodur. Bu method güncel bir çok tarayıcı tarafından PREFILGHT yani CORS kontrolünde ilk adım olarak gerçekleşir, dolayısıyla mutlaka OPTIONS eklemenizde fayda var. Ayrıca servisinizde bir Authorization header ekli ise yine izin verilen header parametresine bunu eklemenizde fayda olacaktır.


Tags:
Anthony Burak DURSUN

Adjans Digital Agency CEO, Gömülü sistemler, yazılım, fotoğraf çekmek, tasarım, teknoloji konularına hisli, evli, 4 kedi babası, asabi, anksiyetik bir kişi. Tekrarlayan şeyleri sevmez, her an her şey hakkında yazabilir, konuşabilir. Önceki hayatında marangoz olduğunu düşünüyor.

  • 1

Leave a Comment

Your email address will not be published. Required fields are marked *

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.