是否可以阻止浏览器进行交叉方案CORS请求?

时间:2011-06-10 07:49:44

标签: javascript cors

我正在创建一个API,供通过CORS请求托管在不同域上的Javascript客户端使用。

我的API只能通过HTTPS访问。

我想限制只能访问HTTPS域提供的那些Javascript客户端。

阅读CORS规范 - http://www.w3.org/TR/cors/#user-agent-security - 似乎大多数用户代理会自动阻止HTTPS客户端访问HTTP API。

是否可以要求反向 - 即阻止HTTP客户端访问我的HTTPS API?

3 个答案:

答案 0 :(得分:1)

检查Referer标头以查看它是否以“https”开头?您还可以验证Referer是否与Origin域匹配作为完整性检查。

答案 1 :(得分:0)

我意识到这有点晚了,但我今天碰巧正在浏览CORS问题。

答案是查看请求中的“Origin”标题。如果它不以https:开头,则拒绝该请求。不过,我不确定最好的状态代码是什么。可能是403 Forbidden回复。

答案 2 :(得分:-1)

您应该将服务器配置为仅允许对您的API进行https调用。