我要做的是检查Web应用程序的用户是否可以访问特定的URL地址,这取决于将显示一些用户信息。
我试图做的是仅使用fetch / axios发送GET请求,但最终出现以下错误: 从源“ https://foo.com/”到“ https://localhost:3000”的访存访问已被CORS策略阻止:所请求的资源上没有“ Access-Control-Allow-Origin”标头。如果不透明的响应满足您的需求,请将请求的模式设置为“ no-cors”以在禁用CORS的情况下获取资源。
然后我在请求中添加了特定的标头,因此我的提取如下所示:
urlFetch() {
const testURL = 'https://foo.com'
const myInit = {
method: 'GET',
mode: 'cors',
headers: {
'Access-Control-Allow-Origin': 'https://foo.com',
'Access-Control-Allow-Methods': 'DELETE, POST, GET, OPTIONS',
},
}
const myRequest = new Request(testURL, myInit)
fetch(myRequest)
.then(
function(response) {
console.log(response)
return response
},
err => {
console.log(err)
}
)
.catch(function(e) {
console.log(e)
})
}
我现在得到的警告是: 从原点“ https://foo.com/”到“ https://localhost:3000”的提取操作已被CORS政策阻止:对预检请求的响应未通过访问控制检查:预检请求不允许重定向。>
我也尝试设置'no-cors'模式-得到响应,但是显然没有数据(但是状态码为200)。 为了解决我的问题,实际上我不需要发送请求的页面中的任何数据本身-我只需要知道用户是否可以访问它即可。 我无权访问url的后端,不幸的是,在这种情况下,不能安装任何浏览器扩展。
预先感谢。