Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.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
Jquery 使用ajax从Mlab连接和检索数据_Jquery_Ajax_Mongodb_Mlab - Fatal编程技术网

Jquery 使用ajax从Mlab连接和检索数据

Jquery 使用ajax从Mlab连接和检索数据,jquery,ajax,mongodb,mlab,Jquery,Ajax,Mongodb,Mlab,我是MongoDB的新手,所以我不知道如何向Mlab发出Ajax请求。。。 我已经做了测试,我希望从Mlab DB检索数据, 我想我需要这样做 // Create MongoDB connection var mongo_connect = mongodb://my_username: my_password@ds66666.mlab.com:59220/my_ebooks // Create Mongo DB query var query_data = db.getCollection

我是MongoDB的新手,所以我不知道如何向Mlab发出Ajax请求。。。 我已经做了测试,我希望从Mlab DB检索数据, 我想我需要这样做

// Create MongoDB connection 
var mongo_connect = mongodb://my_username:
my_password@ds66666.mlab.com:59220/my_ebooks

// Create Mongo DB query 
var query_data = db.getCollection('my_ebooks').find({});

$.ajax({
  url: query_data ,
  type: 'POST',
  data: {
     format: 'json'
  },
  dataType: 'jsonp',
  success: function(data) {
     // Do something with data
  },     
});

你的代码不会像这样工作。您正在查看的示例直接返回一些.json。然而,这种数据检索通常需要调用某种后端服务。即使它可以在浏览器中工作,您也不希望人们在源代码中看到您的数据库凭据

您的服务必须独立于浏览器运行。JavaScript开发人员通常会使用Node.js,但是您可以自由地使用任何您喜欢的工具运行后端,例如Java、PHP、Python、.net等等。显然,您需要一个容器来运行它。四处游玩可能是一个很好的开始,但是你也可以考虑其他服务,比如AWS。 如果您不想编写后端代码,也可以为MongoDB编写一些代码。但是您可能还需要一些容器/服务器来运行这些


正如Vish已经指出的那样,您刚刚定义了一个连接字符串,但从未打开连接。没有一个无论如何都不能工作的司机。您可能应该看看Node.js的代码是什么。

您的代码不会这样工作。您正在查看的示例直接返回一些.json。然而,这种数据检索通常需要调用某种后端服务。即使它可以在浏览器中工作,您也不希望人们在源代码中看到您的数据库凭据

您的服务必须独立于浏览器运行。JavaScript开发人员通常会使用Node.js,但是您可以自由地使用任何您喜欢的工具运行后端,例如Java、PHP、Python、.net等等。显然,您需要一个容器来运行它。四处游玩可能是一个很好的开始,但是你也可以考虑其他服务,比如AWS。 如果您不想编写后端代码,也可以为MongoDB编写一些代码。但是您可能还需要一些容器/服务器来运行这些


正如Vish已经指出的那样,您刚刚定义了一个连接字符串,但从未打开连接。没有一个无论如何都不能工作的司机。您可能应该看看Node.js的is。

首先,将查询数据传递给url参数将不起作用,因为查询数据设置的是指针和db.getCollection,而不是url。Ajax调用需要一个url才能使调用正常工作。其次,db是未定义的,因为您没有定义任何连接或变量db来连接数据库。您需要设置一个服务器端应用程序,该应用程序连接到数据库,然后使用Ajax向后端应用程序发出请求,该应用程序将调用您的mLab数据库。除非有一个js库,您可以使用它连接到mongo db.Vish,否则要使此解决方案正常工作,还需要很多东西-感谢您的快速响应,假设我想连接到mlab并检索数据,使用plunker进行测试,有没有办法做到这一点?您不需要,因为前端和数据库之间需要一个服务器端应用程序层,数据库将接收前端请求并与后端通信。您最好从设置服务器端应用程序与DB对话开始,并打开一个端点从前端发出请求。还有一些无服务器的概念可以探讨。首先,将query_数据传递给url参数不起作用,因为query_数据是设置指针和db.getCollection,而不是url。Ajax调用需要一个url才能使调用正常工作。其次,db是未定义的,因为您没有定义任何连接或变量db来连接数据库。您需要设置一个服务器端应用程序,该应用程序连接到数据库,然后使用Ajax向后端应用程序发出请求,该应用程序将调用您的mLab数据库。除非有一个js库,您可以使用它连接到mongo db.Vish,否则要使此解决方案正常工作,还需要很多东西-感谢您的快速响应,假设我想连接到mlab并检索数据,使用plunker进行测试,有没有办法做到这一点?您不需要,因为前端和数据库之间需要一个服务器端应用程序层,数据库将接收前端请求并与后端通信。您最好从设置服务器端应用程序与DB对话开始,并打开一个端点从前端发出请求。还有一些无服务器的概念你可以探索。Udo,Vish-谢谢你的回答,Vish-谢谢你的回答