我在使用AngularJS / Google Chrome时遇到了一个奇怪的错误。当我执行$ http.get()时,它需要最多18秒才能实际完成。对于“OPTIONS”方法似乎保持“PENDING”:
http://i.imgur.com/yEozFdm.png
服务页面的服务器是Mongoose,@ localhost:5000是Flask,它返回以下头文件以便CORS正常工作。
@mod.after_request
def after_request(response):
response.headers.add('Access-Control-Allow-Origin', 'http://localhost:8080')
response.headers.add('Access-Control-Allow-Methods', 'GET, POST, OPTIONS')
response.headers.add('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept')
有人知道为什么Chrome会推迟OPTIONS请求吗? (从烧瓶服务器调试控制台,似乎OPTIONS方法实际上只在页面重新加载后10-20秒到达)。它似乎在Firefox中运行良好。
答案 0 :(得分:4)
一旦我禁用了“预测网络操作以提高页面加载性能”选项,似乎已经解决了。很奇怪,也许我应该留下这个问题,如果有人可以给出一个可能的理由呢?
编辑:看到评论的原因!