在头axios中发送访问令牌时出现问题。返回以下错误:
CORS策略已阻止从源"http://localhost:3000"访问位于"http://192.168.0.254:3333/api/DOTMobileApi/test"的XMLHttpRequest:对印前检查请求的响应未通过访问控制检查:请求的资源上不存在"Access-Control-Allow-Origin"标头。
我在react js中编写了以下代码:
localStorage.setItem("access_token","eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmYW1pbHlfbmFtZSI6Itin2YbYtdin2LHZiiIsImh0dHA6Ly9zY2hlbWFzLnhtbHNvYXAub3JnL3dzLzIwMDUvMDUvaWRlbnRpdHkvY2xhaW1zL25hbWUiOiLYp9mG2LXYp9ix2YoiLCJuYmYiOjE2NzY0NTMzNTUsImV4cCI6MTY3NjUzOTc1NSwiaXNzIjoibG9jYWxob3N0OjQ0MzQ2IiwiYXVkIjoibG9jYWxob3N0OjQ0MzQ2In0.4w2THPCrSvADow65fEm02H4NWUhGlFblaC6nB6uTgZ8")
let response= axios.get('http://192.168.0.254:3333/api/DOTMobileApi/test',{ headers:{ 'Authorization': Bearer ${localStorage.getItem("access_token")} } })
console.log(response)
4条答案
按热度按时间nhhxz33t1#
您必须在后端启用CORS,并将localhost:3000添加为受信任域,才能使其正常工作
pcww981p2#
了解CORS。您需要将主机添加到允许的起始点。
在没有库的express中,您必须执行以下操作:
在app.js中:
您的问题:
No 'Access-Control-Allow-Origin' header is present on the requested resource—when trying to get data from a REST API
但是如果它不是你的API,你需要代理你的请求,在你的服务器上获取数据并发送到你的前端
wlwcrazw3#
我在www.example.com中编写了以下代码startup.ca中asp.net核心API方法与[AllowAnonymous]一起工作,例如登录方法工作。但其他没有[AllowAnonymous]的方法不工作,公共void ConfigureServices(IServiceCollection服务){
rkkpypqq4#
我找到了解决方案。我在后端有问题。事实上,app.UseCors(“CorsPolicy”)应该在app.UseAuthentication()之前编写;应用程序使用授权()