524响应没有CORS头

问题描述 投票:0回答:1

我有一个似乎正常工作的Couch / Pouch应用程序,但遭受奇怪的延迟并用CORS错误填充浏览器日志。 CORS错误仅在超时GET时发生,因为它们的响应不提供CORS头。

使用浏览器开发工具,我可以看到许多成功的轮询请求,如下所示:

GET https://couch.server/mydb/_changes
  ?style=all_docs
  &filter=_view
  &view=visible/person
  &since=369-69pI ...... bTC_376CZ
  &limit=100
               response 200

......这样的坏人......

OPTIONS https://couch.server/mydb/_changes
  ?style=all_docs
  &feed=longpoll
  &heartbeat=10000
  &filter=_view
  &view=visible/person
  &since=369-69pI ...... bTC_376CZ
  &limit=100
               response 200

GET https://couch.server/mydb/_changes
  ?style=all_docs
  &feed=longpoll
  &heartbeat=10000
  &filter=_view
  &view=visible/person
  &since=369-69pI ...... bTC_376CZ
  &limit=100
               response 524

因此,好案例和坏案例之间只有两个区别。在坏情况下PouchDB:

  1. 在带有OPTIONS请求的GET请求之前
  2. 指定具有10秒超时的longpoll提要

显然,缺陷是CouchDB的524响应没有CORS头!

我有四个这样的live: true, retry: true复制器,所以我的浏览器日志每十秒显示四个红色墨水错误。

我会在CouchDB存储库中将此作为一个问题发布,但我首先想要一些反馈;我很容易误解某事,

其他因素:

  1. 我在GitHub页面中托管客户端代码并通过CloudFlare提供服务。
  2. 从客户端访问CouchDB也可以通过CloudFlare进行访问
  3. CouchDB在我的VPS上落后于NGinx。

请告诉我是否应该提供进一步的细节。

cors couchdb cloudflare pouchdb
1个回答
1
投票

回答这个问题应该归功于@sideshowbarker,因为他让我意识到错误不是在CouchDB中,而是在我的Cloudflare设置中。

在那些设置中,我将我的CouchDB站点设置为使用DNS and HTTP proxy (CDN)(橙色云图标)模式而不是DNS only(灰色云图标)。切换到DNS only,并且可能不必要地擦除缓存,在相当长的延迟(超过一小时?)后解决了问题。

© www.soinside.com 2019 - 2024. All rights reserved.