当前位置: 首页 > 知识库问答 >
问题:

CORS 铬通配符 '*' 角度 8?

龙学
2023-03-14

我得到以下消息CORS只在Chrome,Mozilla工作正常:

CORS策略阻止从源http://172.16.30.79:4200在http://localhost:8002/dataHub/negotiate处访问XMLHttpRequest:对预飞行请求的响应无法通过权限改造检查:当请求的凭据模式为“包含”时,响应中“访问控制允许源”标头的值不能是通配符“*”。由XMLHttpRequest发起的请求的凭据模式由with凭据属性控制。

服务器返回我这些标头:

Access-Control-Allow-Credentials: false
Access-Control-Allow-Headers: x-requested-with,Vary,Server,Access-Control-Allow-Origin,Access-Control-Allow-Credentials,Access-Control-Allow-Headers,Access-Control-Allow-Methods,Date
Access-Control-Allow-Methods: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: Vary, Server, Access-Control-Allow-Origin, Access-Control-Allow-Credentials, Access-Control-Allow-Headers, Access-Control-Allow-Methods, Date
Content-Type: application/json; charset=utf-8
Date: Mon, 23 Sep 2019 18:32:09 GMT
Server: Microsoft-IIS/10.0
Vary: Origin
X-Content-Type-Options: nosniff

我使用信号器的连接是:

this.connection = new signalR.HubConnectionBuilder()
      .configureLogging(signalR.LogLevel.Debug)
      .withUrl("http://localhost:8002/dataHub")
      .build();

 this.connection
      .start({withCredentials: false})
      .then(() => {
});

如您所见,服务器发送了一个报头:

Access-Control-Allow-Origin: *

在Mozilla中,我看到了< code > Access-Control-Allow-Origin:http://172 . 16 . 30 . 79:4200

为什么Chrome替换Access-Control-Allo-Origin:http://172.16.30.79:4200onAccess-Control-Allo-Origin:*我不知道。

共有1个答案

周飞语
2023-03-14

在您的配置上:

//Configure CORS policy
services.AddCors(options =>
{
  options.AddPolicy("CorsPolicy",
  builder => builder.WithOrigins("http://172.16.30.79:4200")
  .SetIsOriginAllowed((host) => true)
  .AllowAnyMethod()
  .AllowAnyHeader()
  .AllowCredentials());
});

然后在上配置

//Cors Policy
app.UseCors("CorsPolicy");
 类似资料:
  • 我在从Angular发送auth头jwt令牌时得到了下面的问题。CORS策略阻止从来源“http://localhost:4200”访问位于“http://localhost:52278/api/user/signup”的XMLHttpRequest:请求的资源上没有“Access-Control-Allow-Origin”标头。 棱角分明的:

  • 我将Spring SecurityCORS启用到一个使用spring webFlux制作的项目中。我的问题是,例如,我们接受来自以下方面的请求:http://localhost:4200.我如何使CORS接受来自http的REQ://*。本地主机:4200 likehttp://a.localhost:4200, http://b.localhost:4200 ? 我的CORS配置如下所示: 你有

  • 我正在为我的应用程序使用webpack angular2初学者工具包(https://github.com/angularclass/angular2-webpack-starter),现在我遇到了一个问题。 我试着打个电话 如何使JSON总是这样? 如何用CORS修复此问题?

  • 问题内容: 如何在路线中指定通配符- 因此,以上内容适用于/ admin / users和/ admin / users / 1或/ admin / org / 3。因此,管理后可能会有一两个级别的路径。我该怎么做 ? 问题答案: 当前,AngularJS不支持路由中的正则表达式。 您可以按照以下方法解决 http://plnkr.co/edit/tBumW2oEqki2sEl1hjSc?p=pr

  • “帮助系统”一节 脱字符 Shell 中的一些功能是通过特殊符号作为控制字符来实现的,上面已经介绍了很多了。这产生一个问题,如果一个文件名中,刚好包含了这些字符,比如 ; ,就很难对它进行操作。使用 less 浏览这个文件 less ;xxx less 会很快返回一个错误信息,因为并没有一个文件名作为操作对象。接着,Shell 会报告,系统中没有 xxx 这个命令。 这是因为 Shell

  • 我为所有源和头启用了cors,但当我从angular应用程序调用方法到spring Boot时,仍然会出现cors错误。 控制台的Cors错误: 我的(我调用getbyemail): 我从我的angular应用程序中调用get: 我还尝试添加: 并在我的中添加了配置文件: 但还是没有运气...