我已尝试过所有内容,请使用CORS
插件。禁用chrome中的web-security。
响应来自POSTMAN
,但无法在$http
中获取。
$http({
url: "https://interview-api-staging.bytemark.co/books",
method: 'GET',
headers: {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'OPTIONS,POST,GET,OPTIONS,PUT,DELETE',
'Access-Control-Allow-Headers': 'Authorization,Content-Type,Accept,Origin,User-Agent,DNT,Cache-Control,X-Mx-ReqToken,Keep-Alive,X-Requested-With,If-Modified-Since'
}
}).then(function(d) {
console.log(d);
});
答案 0 :(得分:0)
在后端使用CORS
。否则,您可以在Chrome网上应用店中查看Allow-Control-Allow-Origin: *
,使用chrome extension
。
当您尝试点击角应用时,您需要打开该扩展程序。
否则您需要在后端应用程序中激活CORS
答案 1 :(得分:0)
客户与此无关。使用CORS标头,您可以告诉客户端我信任哪些其他服务器。那些人可以分享你的资源,客户也不会介意。
例如,如果你有两个域名告诉客户,那么让你的资源被你的第二个网站使用,你不能说我相信你是一个客户。
所以你要保护服务器,而不是客户端。您不希望世界上任何地方托管的脚本都可以访问AJAX API端点。
客户没有任何收获/损失。它只是对服务器的保护,因为使用AJAX所有人都清楚地看到所有URL,如果没有这种保护,任何人都可以使用你的API继续运行他们的前端,只有服务器必须输掉这个所以他们决定谁可以使用他们的资源。
如上所述,你不需要在前端做任何与cors相关的事情。确保在其响应标头中从后端发送cors标头。
服务器必须保护自己,所以他们必须向客户说出一些客户将遵循的规则。默认情况下,客户端将接受所有内容。