我正在挖掘一些跨源请求,而且我不确定同样的原始策略是如何有效的。有很多关于如何处理CORS的主题,但很少解释为什么需要相同的策略。
这个topic提供了一些很好的答案,但我仍有疑问。
服务器应检查Origin标头,如果不对应其授权来源列表中的任何项目,请阻止该请求,还是至少不处理它?或者服务器是否应该关心它并让浏览器阻止它?
在最后一种情况下,这意味着服务器将处理请求,并且可能会更改数据库状态或执行一些应该阻止的操作,对不对?
我已经听说过预检'如果OPTIONS请求返回服务器不允许当前域,是否会阻止第二个请求的浏览器
Origin标头真的安全吗?我的意思是,是不是可以通过javascript代码更改它?
我将不胜感激任何帮助:)
答案 0 :(得分:2)
存在相同的源策略来保护客户端,而不是服务器。它由浏览器强制执行。服务器只是为它收到的每个请求提供服务。