【问题标题】:Cross-Origin Request Blocked: Authentication issue跨域请求被阻止:身份验证问题
【发布时间】:2021-09-04 19:47:37
【问题描述】:

ABP 4.4 版 APP,带有 Angular EF 核心的身份服务器

我的 Angular 客户端将用户名和密码发送到身份服务器,该身份服务器是我的 abp 应用程序的一部分(意味着 api 和身份服务器的相同 URL)返回我的令牌,但在下一次请求“api/abp/application-configuration”之后返回 CORs 错误。 相同的应用程序适用于具有本地配置的 QA 本地环境。 对“api/abp/application-configuration”的相同调用在应用程序启动时工作,因为该时间令牌未附加在请求标头中 我检查我的应用程序设置 CorsOrigins 是否与 IdentityServerClientCorsOrigins 匹配 https上的角度和前端都没有空间问题,但端口不同。您可以使用日志进行验证。日志中的一件事很奇怪,没有协议附加@响应。 (域:1000)

我检查并确认这是身份验证问题。通过注释这两行和类中的 Authorize 属性 我的应用程序运行良好。 cors没问题

app.UseAuthentication(); app.UseJwtTokenMiddleware();

系统日志

2021-09-04 10:42:24.731 -04:00 [INF] 请求开始 HTTP/2 选项 https://domain:1000/.well-known/openid-configuration - - 2021-09-04 10:42:24.745 -04:00 [INF] CORS 策略执行成功。 2021-09-04 10:42:24.751 -04:00 [INF] 请求完成 HTTP/2 选项 https://domain:1000/.well-known/openid-configuration - - - 204 - - 19.7919ms 2021-09-04 10:42:24.793 -04:00 [INF] 请求开始 HTTP/2 GET https://domain:1000/.well-known/openid-configuration - - 2021-09-04 10:42:24.794 -04:00 [INF] CORS 策略执行成功。 2021-09-04 10:42:46.050 -04:00 [ERR] 处理消息时发生异常。 System.InvalidOperationException:IDX20803:无法从“System.String”获取配置。 System.IO.IOException:IDX20804:无法从“System.String”检索文档。 System.Net.Http.HttpRequestException:连接尝试失败,因为连接方在一段时间后没有正确响应,或者连接失败,因为连接的主机没有响应。 (域:1000) System.Net.Sockets.SocketException (10060):连接尝试失败,因为连接方在一段时间后没有正确响应,或者连接失败,因为连接的主机没有响应。

【问题讨论】:

    标签: identityserver4 abp


    【解决方案1】:

    这不是 CORS 问题,而是因为您的 API(UseJwtTokenMiddleware 部分)无法通过 HTTP(s) 访问您的 IdentityServer。我猜你有一些 DNS/证书/网络问题需要解决。

    【讨论】:

      猜你喜欢
      • 2016-08-05
      • 1970-01-01
      • 2015-02-08
      • 2021-06-26
      • 2014-10-13
      • 2019-11-04
      • 2017-02-06
      相关资源
      最近更新 更多