对AJongDB的REST AJAX请求
发布时间:2020-12-15 23:13:42 所属栏目:百科 来源:网络整理
导读:我试图激活 XMLHttpRequest到mongoDB以通过AJAX检索文档. 这是我的代码: function getJsonDocumentByModeldid(model_id) { var valoreInput = document.getElementById('inputModelId').value; alert(valoreInput); $.ajax({ url: "http://localhost:28017/
我试图激活
XMLHttpRequest到mongoDB以通过AJAX检索文档.
这是我的代码: function getJsonDocumentByModeldid(model_id) { var valoreInput = document.getElementById('inputModelId').value; alert(valoreInput); $.ajax({ url: "http://localhost:28017/test/",type: "get",//data: "filter_a=" + valoreInput,dataType: 'jsonp',crossDomain: true,success: function (data) { alert("success"); //var json2javascript = $.parseJSON(data); manageLayout(); },error: function (XMLHttpRequest,textStatus,errorThrown) { alert("Status: " + textStatus + " Error:" + errorThrown); } }); } 我的函数总是返回错误.那么问题是什么? 解决方法
此功能作为
Simple (read-only) REST Interface的一部分受支持,但要使跨域请求
--jsonp ,否则您将受到
Same origin policy问题的影响,因为您发出请求的IP地址和端口与mongoDB的IP地址和端口不匹配正在运行.
使用mongod.exe启动mongoDB –rest –jsonp(以及您可能拥有的任何其他选项). 以下示例页面可以通过Web服务器(例如Apache HTTP Server)提供,或者只是本地保存并作为文件加载到浏览器中.请求是关于名为andyb的dbCollection的信息,我首先在mongoDB中创建了: db.createCollection('andyb'); HTML <!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>mongoDB AJAX demo</title> <script type='text/javascript' src='http://code.jquery.com/jquery-1.9.1.js'></script> <script type='text/javascript'>//<![CDATA[ $(function(){ $.ajax({ url: 'http://localhost:28017/local/andyb',type: 'get',jsonp: 'jsonp',// mongod is expecting the parameter name to be called "jsonp" success: function (data) { console.log('success',data); },errorThrown) { console.log('error',errorThrown); } }); });//]]> </script> </head> <body> </body> </html> 许多浏览器现在支持CORS,这是一种促进跨域资源的替代(更现代)方式. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |