red*_*802 12 rest http production-environment angular
我有一个在生产中运行的angular6应用程序,偶尔有一些用户在http请求期间收到错误.
Http failure response for (unknown url): 0 Unknown Error response: {"isTrusted":true}
这会随机影响用户,HTTP方法中没有用户或其他任何模式,据我所知,我使用sentry来记录错误.
我已经花了很多时间寻找解决方案,到目前为止几乎所有的东西都暗示了错误的cors标题.所有请求都通过api网关,其中设置了cors标头.
'Access-Control-Allow-Headers': 'Content-Type, x-internal-token, Origin, Accept, X-Requested-With, If-Modified-Since, Cache-Control, Keep-Alive'
'Access-Control-Allow-Origin': 'http://example.com'
'Access-Control-Allow-Methods': 'PUT, POST, GET, DELETE, PATCH, OPTIONS'
'Access-Control-Max-Age': 3600
Run Code Online (Sandbox Code Playgroud)
到目前为止,我还没有收到任何错误,当应用程序第一次加载并从api网关获取一些信息,只有在用户使用该应用程序后.甚至更奇怪我也得到了这个错误./assets/i18n/de.json(正常的获取请求),这不是cors,而只是动态翻译的一些静态json.
我完全没有想法,非常感谢任何帮助.
编辑:请仔细阅读; 这个问题只存在于某些用户而不是所有时间,这不是一般的错误配置!
编辑2:为了进一步调试此问题,我设置了第二个api网关(相同的代码),配置为记录所有请求.对角度应用程序进行了轻微修改,因此它会执行两次相同的请求; 一次针对真正的api-gateway,一次针对日志api-gateway(针对一些api调用).在一个实例中,应用程序能够向真实的api网关但不是日志网关请求(相同的代码,nginx,cors头都相同).
EDIT3:日志网关和真正的api网关位于不同的服务器(不同的提供商)上,我可以在状态为200的nginx日志中看到OPTIONS请求.
编辑4:我已经将cors处理从api-gateway移动到nginx,到目前为止我还没有收到更多错误.
小智 0
我想,这就能解决问题。在 json 文件中,请更新资产属性以包含“数组”而不是“字符串”。
这是 Angular CLI 测试版与稳定版的问题。
"apps": [
{
"root": "src",
"outDir": "dist",
"assets": "assets"
}
]
"apps": [
{
"root": "src",
"outDir": "dist",
"assets": [
"assets"
]
}
]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
747 次 |
| 最近记录: |