Борьба с CORS. У меня есть сайт, который делает простой XmlHttpRequest WEB API, который я создал на C#.C# WEB API CORS не работает
var xhr = new XMLHttpRequest();
xhr.open("GET","https://server/controller/method", true);
xhr.send();
В моей web.config я сделал следующее:
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
</customHeaders>
</httpProtocol>
Я также попытался установить пакет NuGet и выполнив следующие действия в моем WebApiConfig.cs
var cors = new EnableCorsAttribute(
origins: "*",
headers: "*",
methods: "*");
config.EnableCors(cors);
Несмотря на эти усилия, CORS все еще не работают. В консоли FireFox, я получаю следующее сообщение об ошибке:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://server . This can be fixed by moving the resource to the same domain or enabling CORS.
IE также просто терпит неудачу и не дает никакой ошибки.
Согласно всем, что я прочитал, одно из этих решений должно работать, но они этого не делают. Должно ли быть включено/изменено в клиентском JavaScript? CORS не работает, когда вы запускаете его в Visual Studio IIS Express на localhost: PortNumber? Что мне не хватает?
Происходит ли такая же проблема, когда вы запускаете ее через обычный http? –
Я пытаюсь запустить его с сайта https, когда я пытаюсь просто обычным http, я получаю сообщение о смешанном контенте, и запрос никогда не делается. – Dave
Попробуйте использовать почтальон. –