微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Angular HttpClient的状态为0Safari和IE

如何解决Angular HttpClient的状态为0Safari和IE

我正在使用Angular HttpClient。 问题是,有时会发生错误,并且客户端会返回状态0“未知错误”。 我们发现问题仅发生在生产环境中的Safari(iOS和Mac)和Internet Explorer 11中。

作为一种解决方法,我们在游戏中放入了HttpInterceptor,它进行5次重试,每次重试间隔300毫秒。这似乎解决了问题。但我想知道根本原因。

我已经读到其他人也有同样的问题,但在这里似乎与CORS有关。但是由于问题是通过重试解决的,所以不应该是CORS。对吧?

我的HttpClient.get:

struct ContentView: View {
    var body: some View {
        NavigationView {
            Form {
                Section(header: Text("Info")) {
                    HStack {
                        Text("Name")
                        Spacer()
                        Text("someName")
                    }
                    HStack {
                        Text("Surname")
                        Spacer()
                        Text("someSurname")
                    }
                }
            }
            .navigationBarTitle("Profile")
        }
    }
}

更新#1: 我们的应用程序前面有一个F5 Big IP负载平衡器。 我读到,在这方面,保持连接可能存在一些问题。

有什么建议吗?

解决方法

IE的控制台中是否还有其他错误消息?

在大多数情况下,它们是CORS问题。您可以尝试使用Fiddler,然后尝试使用IE访问该站点,以查看其是否有效。如果可行,我认为这是CORS问题。在Fiddler的AutoResponder中,您可以编辑规则以使其具有Access-Control-Allow-Origin响应标头,其中包含请求站点的原点值。

除CORS问题外,还有许多其他原因导致错误代码。您可以参考this answer了解详细信息。它可能与负载均衡器有关,例如在请求期间断开的连接或请求超时。您可以在IE中不使用负载均衡器的情况下加载应用程序,以查看问题是否仍然存在。如果没有负载均衡器也可以正常工作,那么您可以说问题出在负载均衡器上。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?