解析服务器错误"不支持协议"

时间:2016-02-01 09:27:20

标签: node.js mongodb parse-server

我已经将数据迁移了两天,在AWS中一切正常 - 我使用的是Bitnami MEAN机器,它只是一个非常小的应用程序。 仅供参考,我从Heroku + Parse迁移,在AWS上设置nginx以运行多个nodejs应用程序。 我不得不降级默认的mongodb安装,因为与Parse不兼容(为什么?)

所以,直接问题:安装了node.js解析服务器,配置就像它们在git上显示一样

var api = new ParseServer({
  databaseURI: 'mongodb://127.0.0.1:27017/database',
  cloud: './cloud/main.js',
  appId: 'my-app-id',
  masterKey: 'my-master-key'
});

但当我尝试执行任何查询时

Error: Protocol not supported.
   at send (/opt/bitnami/apps/bellboy-admin/node_modules/xmlhttprequest/lib/XMLHttpRequest.js:299:15)
   at dispatch (/opt/bitnami/apps/bellboy-admin/node_modules/parse-server/node_modules/parse/lib/node/RESTController.js:137:11)
   at Object.ajax (/opt/bitnami/apps/bellboy-admin/node_modules/parse-server/node_modules/parse/lib/node/RESTController.js:139:5)
   at ParsePromise.<anonymous> (/opt/bitnami/apps/bellboy-admin/node_modules/parse-server/node_modules/parse/lib/node/RESTController.js:208:29)
   at ParsePromise.wrappedResolvedCallback (/opt/bitnami/apps/bellboy-admin/node_modules/parse-server/node_modules/parse/lib/node/ParsePromise.js:135:41)
   at /opt/bitnami/apps/bellboy-admin/node_modules/parse-server/node_modules/parse/lib/node/ParsePromise.js:196:35
   at runLater (/opt/bitnami/apps/bellboy-admin/node_modules/parse-server/node_modules/parse/lib/node/ParsePromise.js:180:12)
   at ParsePromise.then (/opt/bitnami/apps/bellboy-admin/node_modules/parse-server/node_modules/parse/lib/node/ParsePromise.js:195:9)
   at Object.request (/opt/bitnami/apps/bellboy-admin/node_modules/parse-server/node_modules/parse/lib/node/RESTController.js:201:8)
   at Object.find (/opt/bitnami/apps/bellboy-admin/node_modules/parse-server/node_modules/parse/lib/node/ParseQuery.js:1141:27)

我几乎尝试了一切,你的想法是什么?

2 个答案:

答案 0 :(得分:0)

您是否为ParseServer安装了依赖项?更具体地说,是否安装了MondoDB NodeJS驱动器?

npm install mongodb

如果有帮助,I have a tutorial解释了如何设置ParseServer,只要已经安装了MongoDB和NodeJS到正确的版本。

答案 1 :(得分:0)

<强>解决

我猜这是涉及我的节点应用程序和解析服务器之间的http / https协议的事情所以我只是在Parse.serverURL的地址之前添加了http://

Parse.initialize('my-id','unused');
Parse.serverURL = 'http://localhost:3030/parse';

如果未指定,可能默认情况下会在https上显示。