首页 > 解决方案 > 通过 axios 发布数据而不“包装”密钥?

问题描述

我正在尝试使用 Axios 将一些数据发布到 couchDB-Instance:

var payload = {
    key1: "value1",
    key2: "value2"
}

发布到 Couchdb:

axios.post("couchdb/testdatabase/", {
        payload
    })
    .then(function(response) {}
    )
    .catch(function(error) {}

在 CouchDB 上,会创建这样的文档:

{
  "_id": "2b8f7ccc9216e6946ad2e06c16002fb1",
  "_rev": "1-50656bdcbb79f9b427c9aa5e0afb3255",
  "payload": {
    "key1": "value1",
    "key2": "value2"
  }

}

我想要得到的是这样的东西:

{
  "_id": "2b8f7ccc9216e6946ad2e06c16002fb1",
  "_rev": "1-50656bdcbb79f9b427c9aa5e0afb3255",
  "key1": "value1",
  "key2": "value2"
}

当然,我可以将 Key-Value-Pairs 传递给该axios.post()方法,但使用更大的对象会非常耗时。

那么是否可以删除这些键值对周围的“有效负载包装器”?

谢谢

标签: javascriptcouchdbaxios

解决方案


它不需要用花括号包裹,试试这个:

axios.post("couchdb/testdatabase/", payload)

或者

axios.post("couchdb/testdatabase/", { key: 1, otherKey: 2 })

推荐阅读