【发布时间】:2017-06-17 08:46:37
【问题描述】:
我在 C# 中创建了一个 WebService。所有 GET 方法都可以正常工作。
现在我需要提供一些 POST 方法。通过 C# 调用它时,它可以正常工作。然后我尝试用 JavaScript 编写一个小的 html 页面来调用我的方法。但是那里出现了 CORS 错误(“预检通道未成功”)。
我已经在我的 web.config 文件中添加了以下部分:
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Headers" value="*" />
<add name="Access-Control-Allow-Methods" value="*" />
</customHeaders>
遗憾的是它仍然无法正常工作。我做错了什么?
【问题讨论】:
-
我能问一下您使用的 API 框架是什么?
-
你处理 HEAD 方法吗?通常浏览器会使用 HEAD 方法进行预检请求,以检查 CORS 策略一次。
-
@Gusman 实际上通常带有
OPTIONS请求。见:en.wikipedia.org/wiki/… -
@CodingGorilla 是的,你是对的 :)
标签: c# web-services cors