Я создал службу API, которая будет обрабатывать запросы REST и использовать их для выполнения операций CRUD на экземпляре MongoDB.Это приложение является автономным (по замыслу) и должно быть сквозным для всего, что его вызывает.Другое мое приложение, которое я создал в Angular, вызывает этот API для взаимодействия с моим экземпляром MongoDB.Я пытался создать свою полезную нагрузку JSON из формы, которая отлично работает.Я получаю что-то вроде:
{ "_id":"111111111", "name":"herp", "address":"derp", "city":"foo", "state":"bar", "zip":"11111", "phone":"111-222-3333"}
Затем я пытаюсь взять этот JSON и отправить его в службу, но что-то теряется в переводе, как только служба получает его и имя моей переменной, котороесодержит объект JSON, который превращается в фактический ключ в запросе, с JSON в качестве его значения.Я звоню в службу следующим образом:
const httpOptions = {
headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Cache-Control': 'no-cache' })
};
updateStuff(update){
console.log("Sending: " + JSON.stringify(update) + " for update");
return this.http.put('http://localhost:3000/api/test/_update', {dbName:"testDb",collection:"testing",update}, httpOptions);
}
Какие журналы:
Sending: {"name":"blah","address":"111 Anystreet","city":"MyCity","state":"NY","zip":"11111","phone":"555-111-2222","_id":"5ba914df13236f7a6ea3e233"} for update
Так что я знаю, что прямо перед вызовом данные в порядке.Однако, с другой стороны, он видит следующее, когда получает данные:
Received request: {"dbName":"testDb","collection":"testing","update":{"name":"blah","address":"111 Anystreet","city":"MyCity","state":"NY","zip":"11111","phone":"555-111-2222","_id":"5ba914df13236f7a6ea3e233"}}
вместо того, что я намеревался, что ниже:
{"dbName":"testDb","collection":"testing","name":"blah","address":"111 Anystreet","city":"MyCity","state":"NY","zip":"11111","phone":"555-111-2222","_id":"5ba914df13236f7a6ea3e233"}
Как мне сообщитьHTTP-запрос на отправку самих данных вместо создания нового ключа с именем «update» и размещения полезной нагрузки в качестве его значения?Я попробовал JSON.stringify, но в итоге он отправил то же самое, но с кучей обратных косых черт перед всеми скобками.Он по-прежнему отправляет все это в ключе с именем «update».Любая помощь будет принята с благодарностью.