#javascript #arrays #ajax #mongodb
#javascript #массивы #ajax #mongodb
Вопрос:
При попытке обновить коллекцию 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);
}
});
Комментарии:
1. Проверьте, что возвращает запрос, чтобы перехватить эти ошибки.
2. @JonasWilms — Я получаю 200 ok
Ответ №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);
}
});