2016-10-10 3 views
0

Я пытаюсь удалить определенный вход из моей базы данных. Кажется, я не могу получить данные на app.delete, чтобы узнать, какую запись удалить. Однако app.post получает данные. Вот мой кодОтправка данных в app.delete в node.js

Клиент:

let userToDelete = { 
    data:entryToDelete 
} 

httpRequest.delete(url, userToDelete) 
    .then(function (response) { 
     //... 

Сервер

app.delete('/api/deleteEntry', function(req, res){ 
    console.log('going to delete', req.body); 
    //... 
}); 

теперь, если я изменяю httpRequest.post и app.post, req.body консоль записывает данные я отправляю. Не запрашивает ли запрос .delete данные?

ответ

2

RFC2616 говорит:

УДАЛИТЬ метод требует, чтобы сервер происхождения удалить ресурс идентифицированного Request-URI.

Запросные органы явно не разрешены для запросов HTTP DELETE, но я не буду полагаться на них, всегда будучи доступными. Вам нужно будет указать какой-то идентификатор или первичный ключ в вашем URI запроса, чтобы ваш сервер мог передать это вместе с вашей базой данных для удаления.

+0

Спасибо! Я прилично новичок в узле. Там, где я работаю, мы являемся магазином Java, и я занимаюсь прежде всего интерфейсом. Хотя сейчас мы реализуем узел. Я не понимаю, как это делают серверы Java. Они вытаскивают ключ из запроса uri. Мы не отправляем данные в .delete. Благодаря! – Chipe

Смежные вопросы