【问题标题】:PouchDB createIndex throws a 500 error codePouchDB createIndex 抛出 500 错误代码
【发布时间】:2018-11-14 17:16:49
【问题描述】:

我只是想创建一个这样的基本索引

currentDB.createIndex({
    index: {
        fields: ['name']
    }
}).then((result) => {
  
}).catch((error) => {

})

但它只是向我发送了一个带有“unknown_error”错误消息的 500

我可以成功运行所有其他方法:.getIndexes、.allDocs、.query 等...只有此方法因某种原因而失败。

【问题讨论】:

  • 你在哪个浏览器上运行,哪个 PouchDB 版本,任何适配器?
  • 使用chrome,PouchDB 6.4.3版本,也试过6.2.0,没有适配器
  • 你试过不同的浏览器,清除缓存吗?
  • 我试过不同的浏览器和清除缓存,同样的错误信息

标签: javascript couchdb pouchdb


【解决方案1】:

documentation中提到的:

500 - 内部服务器错误

请求无效,或者是因为提供的 JSON 无效, 或作为请求的一部分提供了无效信息。

您需要提供更多详细信息才能重现您的情况。


我厌倦了 NodeJS 上的 createIndex API,看看我是否遇到任何问题。我在一个名为 server.js 的文件中创建了以下代码:

process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0"; // Ignore rejection, becasue CouchDB SSL certificate is self-signed

//import PouchDB from 'pouchdb'
const PouchDB = require('pouchdb')
PouchDB.plugin(require('pouchdb-find'))
const db = new PouchDB('https://admin:****@192.168.1.106:6984/reproduce')

db.createIndex({
    index: {
        fields: ['title']
    }
}).then((result) => {
    console.log(result)
}).catch((error) => {
    console.log(error)
})

当我运行代码时,结果很好:

$ node server.js 
{ result: 'created',
  id: '_design/94407075806d27d94ac764d9aa138a43c015dc1f',
  name: '94407075806d27d94ac764d9aa138a43c015dc1f' }

所以,至少在 NodeJS 上,createIndex 应该没有任何问题。我的 PouchDB 版本如下所示:

{
  "name": "reproduce-pouchdb-tls",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "pouchdb": "^6.4.3",
    "pouchdb-find": "^6.4.3"
  }
}

【讨论】:

  • 我还能提供哪些其他有用的信息?这个请求直到上周才开始失败。我之前一直在使用它,并且没有对我们这边的代码进行任何更改,请求已经开始失败。
  • @PandaScript 要使用createIndex,您需要 pouchdb-find 插件。您使用的是哪个版本的 pouchdb-find 插件?
  • @PandaScript 我在 NodeJS 上尝试了createIndex API。请查看我的更新答案。
  • 当我尝试在服务器上使用 createIndex 时,我实际上得到了一个不同的错误,我得到 createIndex 不存在!由于某种原因,.find 方法在服务器上也不起作用。
  • @PandaScript 请将您在服务器端的代码与我的代码进行比较,看看是否有任何显着差异。
猜你喜欢
  • 1970-01-01
  • 2019-05-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多