我正在尝试连接我的MongoDB数据库(或者连接到服务器,实际上是MongoLab),当我将代码放在name.js文件中时,它工作得很好,但当我将代码放在<script>标记中时,它就不起作用了。
另外,我的文件夹中只有这两个文件,而且我使用的是Cloud9框架。
这是我的JavaScript代码:
// JavaScript File
var MongoClient = require('mongodb').MongoClient;
var url = "x";
MongoClient.connect(url, function(err, db) {
if (err) throw err;
var dbo = db.db("mkndb");
var myobj = { name: "Company Inc", address: "Highway 37" };
dbo.collection("test").insertOne(myobj, function(err, res) {
if (err) throw err;
console.log("1 document inserted");
db.close();
});
});谢谢
发布于 2018-02-28 11:22:12
您需要的包mongodb是一个node.js包,它只在服务器端运行,不能在浏览器中运行。
要在客户端访问MongoDB,可以使用REST REST服务。它允许通过XmlHttpRequests进行基本的查询。
要启用它,您必须使用--rest参数启动mongod。
然后您可以像这样查询它:
http://127.0.0.1:28017/someDatabase/someCollection/?filter_name=someFilter发布于 2018-02-28 11:28:37
您似乎正在使用Mongodb节点客户端。在带有标签的html页面中插入脚本将不会像您所期望的那样工作。你有几种方法来实现你正在寻找的东西:
nodejs
a.在Lambda中部署nodejs。模式详情在这里- https://docs.aws.amazon.com/cloud9/latest/user-guide/lambda-functions.html。然后,您可以从浏览器进行连接,如下所示- https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/browser-invoke-lambda-function-example.html
b.在EC2 中部署
如果您不想构建/部署node.js服务器,请尝试使用mLab Data
的这种特殊情况
https://stackoverflow.com/questions/49021326
复制相似问题