解析服务器和 mongodb 问题 [英] Parse Server and mongodb issue

查看:57
本文介绍了解析服务器和 mongodb 问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试为我的 Express 应用程序设置本地安装的解析服务器.这是我所做的:

I'm trying to setup a local install of a parse server for my express app. Here is what I have done:

npm install -g parse-server mongodb-runner

那么:

mongodb-runner start

触发了这个错误:

  Starting a MongoDB deployment to test against...{ HTTPError: Response code 403 (Forbidden)
at EventEmitter.ee.on.res (/usr/local/lib/node_modules/mongodb-runner/node_modules/got/index.js:250:24)
at EventEmitter.emit (events.js:182:13)
at Immediate.setImmediate (/usr/local/lib/node_modules/mongodb-runner/node_modules/got/index.js:99:8)
at runCallback (timers.js:705:18)
at tryOnImmediate (timers.js:676:5)
at processImmediate (timers.js:658:5)
name: 'HTTPError',
host: 'fastdl.mongodb.org',
hostname: 'fastdl.mongodb.org',
method: 'GET',
path: '/osx/mongodb-macos-x86_64-4.0.3.tgz',
protocol: 'https:',
url:
'https://fastdl.mongodb.org/osx/mongodb-macos-x86_64-4.0.3.tgz',
statusCode: 403,
statusMessage: 'Forbidden',
headers:
{ 'content-type': 'application/xml',
 'transfer-encoding': 'chunked',
 connection: 'close',
 date: 'Wed, 17 Oct 2018 18:38:43 GMT',
 server: 'AmazonS3',
 'x-cache': 'Error from cloudfront',
 via:
  '1.1 c743f1ce1ce65e454843328ae4e050a2.cloudfront.net (CloudFront)',
 'x-amz-cf-id': 'eA7O6955PJVLdcvfXCAuTW3YOEGRoGcWGxGXRgAiPq8zbGFyBvug8Q==' } }

因此,我决定在 mongodb.com 上创建一个集群,而不是在本地运行 mongodb.然后我尝试运行此命令连接到集群(当然我用正确的值替换了 APP_ID、MASTER_KEY 和 MONGODB_DATABASE_URI):

So instead of running mongodb locally I decided to create a cluster on mongodb.com. Then I tried running this command connecting to the cluster(of course I replaced the APP_ID, MASTER_KEY, and MONGODB_DATABASE_URI with the proper values):

parse-server --appId APP_ID --masterKey MASTER_KEY --databaseURI MONGODB_DATABASE_URI

这是我得到的错误:

/usr/local/lib/node_modules/parse-server/lib/ParseServer.js:225
      throw err;
      ^

TypeError: Cannot read property 'close' of undefined
at topology.connect (/usr/local/lib/node_modules/parse-server/node_modules/mongodb/lib/operations/mongo_client_ops.js:412:16)
at ReplSet.<anonymous> (/usr/local/lib/node_modules/parse-server/node_modules/mongodb/lib/topologies/replset.js:364:11)
at Object.onceWrapper (events.js:273:13)
at ReplSet.emit (events.js:182:13)
at ReplSet.EventEmitter.emit (domain.js:442:20)
at /usr/local/lib/node_modules/parse-server/node_modules/mongodb-core/lib/topologies/replset.js:631:23
at Server.<anonymous> (/usr/local/lib/node_modules/parse-server/node_modules/mongodb-core/lib/topologies/replset.js:357:9)
at Object.onceWrapper (events.js:273:13)
at Server.emit (events.js:182:13)
at Server.EventEmitter.emit (domain.js:442:20)

我在谷歌上搜索了很长时间,我无法弄清楚这一点.parse-server 和 mongodb 都是最新的.说 parse-server 是 3.0.0,mongodb 是 3.1.8

I've been googling for so long and I can't figure this out. parse-server and mongodb are both completely up to date. Says parse-server is 3.0.0 and mongodb is 3.1.8

推荐答案

看起来 mongodb-runner 第一次从 mongodb.org 下载了一些文件,根据 此线程,某些版本的这些链接已更改.因此,通过在运行 mongodb-runner 时设置环境变量 MONGODB_VERSION 来尝试不同的 mongo 版本:

It looks like mongodb-runner downloads some files from mongodb.org the first time and, according to this thread, those links have changed for some versions. So try different mongo versions by setting then environmental var MONGODB_VERSION when running mongodb-runner:

MONGODB_VERSION=3.4.1 mongodb-runner

这篇关于解析服务器和 mongodb 问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆