我试图找出为什么许多开发人员在他们的REST API产品中默认禁用CORS ?安全是主要问题吗?从W3C wiki上关于CORS支持的文章来看,添加CORS支持似乎相当简单(在服务器上添加一个带有值'*'的头文件Access-Control-Allow-Origin)
我最近在尝试编写一个简单的javascript应用程序来访问Azure表和其他Rest api(如Panoptix和ProductWIKI)时遇到了问题。他们有一些很棒的REST api,但不允许CORS。具体来说,Azure表有一个严格的与REST API调用相关联的身份验证过程,尽管如此,它不会允许CORS(至少目前)。
我想听听RESTFul API的开发人员和管理员关于他们在API产品中启用/禁用CORS的原因。安全/流量/兼容性是主要的关注点吗?还是还有其他的问题?
当我创建Web服务时,我不使用CORS,因为它是默认设置,只有在项目需要公共浏览器访问我们的服务时才添加它。为什么同源策略是默认的是另一个问题。我从未见过禁止其他域的Ajax访问有什么好处。