加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

对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,这是一种促进跨域资源的替代(更现代)方式.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读