Post 从 Quasar Vue3 Axios 到 CouchDB 的文档

Post doc to CouchDB from Quasar Vue3 Axios

我尝试了几种方法,但都无法正常工作。 base URL 在 Axios 安装文件中,登录它的控制台显示正确的地址。 使用 PouchDB 时复制工作,但在这种情况下,我不想使用 Pouchd,不需要保存本地只想要 post.

我在这段代码中遇到了这个错误: “ 401(未经授权)” “错误:请求失败,状态代码为 401”

api({
    method: "POST",
    url: "/webdata",
    data: doc,
    headers: { "content-type": "application/json" },
  })
    .then((result) => {
      console.log("result: ", result);
    })
    .catch((e) => {
      console.log("e: ", e);
    });
  

我在这段代码中遇到了这个错误: “身份验证错误:请求失败,状态代码为 400”

  var username = <user>;
  var password = <pass>;
  var credentials = window.btoa(username + ":" + password);

  var basicAuth = "Basic " + credentials;
  api
    .post("/webdata", {
      headers: { Authorization: basicAuth },
    })
    .then(function (response) {
      console.log("Authenticated ", response);
    })
    .catch(function (error) {
      console.log("Error on Authentication ", error);
    });

当我使用管理员时它甚至失败user/pass

我也用过 Postman,如果我添加 id 和 "/json"

就可以了
http://<ip>:5984/webdata/<test::id>/json

感谢您的帮助

我在语法中找到了答案:

  api({
    method: "POST",
    url: "/webdata",
    data: doc,
    })
    .then((result) => {
      console.log("result: ", result);
    })
    .catch((e) => {
      console.log("e: ", e);
    });

我删除了“headers: { Authorization: basicAuth }”和“headers: { “content-type”: “application/json” },”我已经在 axios 配置中添加了它. 另外,我确保我在文档中有一个 _id。