【问题标题】:Cloudant Error: "The `source' property must exist and be either a string or an object."Cloudant 错误:“‘源’属性必须存在并且是字符串或对象。”
【发布时间】:2017-09-08 10:55:57
【问题描述】:

我在客户端使用 PouchDB 6.1.1,在服务器端使用 IBM Cloudant。它可以毫无问题地保存到 PouchDB。当我使用 myPouch.replicate.to(..) 进行复制时,我得到 201 状态,但响应禁止错误消息/原因“‘源’属性必须存在并且是字符串或对象。”和状态 500。出现此错误的原因可能是什么?

这是我成功放入 PouchDB 的文档:

{
    _id: "Test2017-01-11T13:47:48-05:00",
    completed: false,
    created_by: "Joes Moes",
    created_on: "2017-01-11T13:47:48-05:00",
    durationInSeconds: 1898,
    edited: false,
    guestVisit: false,
    manualVisit: false 
}

这是复制到 Cloudant 后的响应对象。

{
    doc_write_failures: 1,
    docs_read: 1,
    docs_written: 0,
    end_time: Wed Jan 11 2017 13:54:38 GMT-0500 (EST),
    errors: [{
        error: "forbidden",
        id: "Test2017-01-11T13:47:48-05:00",
        message: "The `source' property must exist and be either a string or an object.",
        name: "forbidden",
        ok: true,
        reason: "The `source' property must exist and be either a string or an object."
    }],
    rev: "1-fdebae00ecfe324c91e85a88fd823442",
    status: 500,
    last_seq: 25,
    ok: true,
    start_time: Wed Jan 11 2017 13:54:37 GMT-0500 (EST),
    status: "complete"
}

提前谢谢你!

【问题讨论】:

  • 您的复制是如何配置的,例如它是实时的吗?发布您的复制代码。

标签: pouchdb cloudant


【解决方案1】:

谢谢大家的回答!我在数据库中发现了问题。

在客户端,我使用以下代码复制到 cloudant:

myPouchDB.put(doc); 
myPouchDB.replicate.to(myCouchDB);

问题出在数据库本身。不知何故,复制设计文档 (_design/_replicator) 被添加到导致问题的数据库中。删除该文档后,从 PouchDB 到 Cloudant 的复制工作正常。

【讨论】:

    【解决方案2】:

    在我到 CouchDb 的 JSON 文档中,引用了属性。我注意到它们不在您的文档中。也许你可以试试这个:

    {
        "_id": "Test2017-01-11T13:47:48-05:00",
        "completed": false,
        "created_by": "Joes Moes",
        "created_on": "2017-01-11T13:47:48-05:00",
        "durationInSeconds": 1898,
        "edited": false,
        "guestVisit": false,
        "manualVisit": false 
    }
    

    改为?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-30
      • 2019-10-15
      • 2017-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-14
      相关资源
      最近更新 更多