Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
向部署的流星写入数据';s应用程序MongoDB_Mongodb_Meteor_Objcmongodb - Fatal编程技术网

向部署的流星写入数据';s应用程序MongoDB

向部署的流星写入数据';s应用程序MongoDB,mongodb,meteor,objcmongodb,Mongodb,Meteor,Objcmongodb,我有一个meteor应用程序,其中我使用mongoDB从ios应用程序写入。当meteor应用程序在本地运行(端口3000)时,此功能可以正常工作。我只需使用dbConn=[mongoconnectionconnectionforserver:@“127.0.0.1:3002”错误:&error]问题是一旦我将应用程序部署到meteor.com。我可以通过使用ping whatever.meteor.com找到ip地址,但是我该从哪里开始呢。我不知道如何写入已部署的mongoDB。这应该相当简单

我有一个meteor应用程序,其中我使用mongoDB从ios应用程序写入。当meteor应用程序在本地运行(端口3000)时,此功能可以正常工作。我只需使用
dbConn=[mongoconnectionconnectionforserver:@“127.0.0.1:3002”错误:&error]问题是一旦我将应用程序部署到meteor.com。我可以通过使用
ping whatever.meteor.com
找到ip地址,但是我该从哪里开始呢。我不知道如何写入已部署的mongoDB。这应该相当简单,但我似乎不明白。谢谢

要获取临时mongodb凭据,请运行以下命令:

meteor mongo whatever.meteor.com --url
资料来源:


请注意,凭据仅在1分钟内有效,因此保存Objective客户端数据的正确方法是让它与meteor Web服务器通信,而不是直接与mongodb通信。最简单的方法是使用
iron router
包公开REST端点,如下所述:

您需要更改主机IP以反映承载MongoDB节点的服务器。它不是127.0.0.1(localhost)。此外,您还应该验证身份验证是关闭还是打开的。如果启用,则需要凭据(用户名和密码)。需要获取用户名、密码和关联的数据库名称。一旦你有了它,你就可以使用连接字符串进行连接,比如:“mongodb://:@whatever.meteor.com:27017/”当然,在shell中你可以使用:
$mongo whater.meteor.com:27017/-u-p
来测试连接,你需要找到用户名和密码
meteor mongo
可能正在为您处理身份验证,因此它无法帮助您完成这项工作。试着用mongo外壳连接,就像Rishi建议的那样。有点旁白:mongo wire协议是未加密的,因此,一般来说,我建议不要使用这种特殊的体系结构……我认为即使是密码也会以明文形式发送。该命令返回
mongodb://client-89674e99:60036738-de64-cde9-ecc1-b58abf778d44@production-db-c3.meteor.io:27017/which_meteor_com
让我能够与mongoDB通信1分钟。我的集合仍然称为meteor.collection
或只是简单地称为collection?@Nate,这是由ObjC驱动程序控制的。通过wiki查看,它看起来像“mydb.collection”:如果我要用自己的mongodb托管自己的服务器,字符串是否仍需要每1分钟刷新一次?或者该功能只是一个内置的.meteor.com安全功能?@Nate使用外部托管的mongodb可以避免1分钟的刷新。根据Noa的评论,直接向mongo发送数据仍然不安全。因此,不管是否由外部托管,您仍然希望在这两者之间有另一个可以保护消息的服务。一旦安全的银河托管可用,你就可以从你的meteor应用程序中进行。你现在可以在meteor.com上进行,但我不认为你可以使用自定义域并在当前设置中仍然获得ssl。我这样做,但使用给定的url后,我得到“未授权在meteor.db.myCollection上插入”。有人知道我做错了什么吗?