【问题标题】:Ionic PouchDB gives CORS error for remote CouchDBIonic PouchDB 为远程 CouchDB 提供 CORS 错误
【发布时间】:2015-09-07 21:46:08
【问题描述】:

我从我的 ionic 服务控制台收到此错误。

733291 error PouchDB 错误:远程数据库似乎没有启用 CORS。要解决此问题,请启用 CORS:http://pouchdb .com/errors.html#no_access_control_allow_origin_header

我跟着this guide 在我的桥接 Debian7.8 虚拟机客户机上安装了 couchDB,因为 apt-get couchDB 是 1.2 版,而且我读到 CORS 在 1.2 中无法正常工作。

这是 ionic/pouchDB 输出的屏幕截图和给出问题的 http 标头。 https://www.dropbox.com/s/vok8rih830tsodq/cors.png?dl=0

在我的 index.html 中,在包含我的 app.js 之前,我有

<script src="lib/pouchdb/dist/pouchdb.min.js"></script>

在 app.js 中,我有

var localDB = new PouchDB("todos");
var remoteDB = "http://admin:mysecretpassword@192.168.1.4:5984/todos";

...

app.run(function($ionicPlatform) {
    $ionicPlatform.ready(function() {
    ...
    localDB.sync(remoteDB,{live:true});

我验证了远程 CORS 正在使用来自我的客户端的 monsur 的 cors-api 工作。

【问题讨论】:

    标签: debian couchdb cors ionic pouchdb


    【解决方案1】:

    是的,这是我在 4.0.1 中引入的错误。错误是当真的一切正常时它会发出警告。我试图帮助那些遇到 CORS 错误并且不了解他们所看到的内容的人,但我最终让很多收到虚假警告并且不明白原因的人感到困惑。 (这与无法区分 CORS 错误和正常 HTTP 超时有关。)

    无论如何,如果您升级到 4.0.2+,警告就会消失。

    【讨论】:

    • 很高兴收到您的来信!在我的空闲时间学习开发的东西,而这些 cors 的东西仍然给我带来了麻烦(最近在 fb 应用程序测试中)。无论如何,我用 4.0.2 和 4.0.3 都进行了测试,但仍然出现错误。有时它会在页面刷新时一致地发出。我的 couchdb Cors credentials=false 可以吗?
    • 请提交错误;听起来也许我们应该完全删除警告,如果它发出很多误报。
    【解决方案2】:

    我在使用 PouchDB 4.01 和 Cloudant(托管 CouchDB)时遇到了完全相同的问题。在 Cloudant 上启用了 CORS,并且该错误在一天中随机发生多次。我在 Cloudant 知识渊博的技术支持人员那里花了将近 2 个小时,他们确认这是 PouchDB 错误(错误?),而不是 CouchDB 服务器上的问题。

    【讨论】:

    • 我的频率比那更频繁(页面刷新,但可能是由于实施不当?我必须回头看看..)。很高兴知道这似乎是对 PouchDB 而不是 couchdb 的一般警告。如果您没有看到,@nlawson 在 4.01 以上添加了一些见解。
    猜你喜欢
    • 2015-07-21
    • 2017-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-26
    • 2014-08-30
    • 1970-01-01
    • 2020-08-02
    相关资源
    最近更新 更多