【问题标题】:Update (Javascript) collection column in MongoDB with array使用数组更新 MongoDB 中的(Javascript)集合列
【发布时间】:2019-08-10 06:26:15
【问题描述】:

当尝试使用数组作为值更新 mongoDB 集合时,更新会静默失败。

这不起作用:

var arr = ["test","test1","test2"];
$.ajax('http://my.mongodb.com/collection?id=80a2c727de877ac9' , {
      type: "PUT",
      contentType: "application/json",
      data: JSON.stringify({
        mykey: arr
      }),
      success: function() {
        // Do something
      }, 
      error: function(xhr) {
        console.log(xhr.responseText);
      }
    });

这样做:

$.ajax('http://my.mongodb.com/collection?id=80a2c727de877ac9' , {
      type: "PUT",
      contentType: "application/json",
      data: JSON.stringify({
        mykey: "test"
      }),
      success: function() {
        // Do something
      }, 
      error: function(xhr) {
        console.log(xhr.responseText);
      }
    });

【问题讨论】:

  • 检查请求返回的内容以捕获这些错误。
  • @JonasWilms - 我得到一个 200 好的

标签: javascript arrays ajax mongodb


【解决方案1】:

事实证明,我需要先对数组进行字符串化,然后再在 ajax 数据中对其进行字符串化:

var arr = ["test","test1","test2"];
arr = JSON.stringify(arr);
$.ajax('http://mordor.fmr.com:8030/techtest?id=80a2c727de877ac9' , {
      type: "PUT",
      contentType: "application/json",
      data: JSON.stringify({
        assignedTechs: arr
      }),
      success: function() {
        // Do something
      }, 
      error: function(xhr) {
        console.log(xhr.responseText);
      }
    });

【讨论】:

    猜你喜欢
    • 2018-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-01
    • 1970-01-01
    • 2012-03-14
    • 1970-01-01
    相关资源
    最近更新 更多