2016-10-21 3 views
3

Вот как я использую $ http.get Angular для отправки параметров конечной точке REST. Он работает:

var httpParams = {'myparam1': 'Hello'}; 
$http.get('http://localhost:8976/my/url', {'params': httpParams}).then(successFunc, failureFunc); 

Это посылает GET вызов, который эквивалентен следующей CURL команды:

curl --request GET "http://localhost:8976/my/url?myparam1=Hello" 

Но теперь хочет, чтобы отправить запрос DELETE с тем же URL и теми же параметрами. Как мне это сделать? Это не работает:

var httpParams = {'myparam1': 'Hello'}; 
$http.delete('http://localhost:8976/my/url', {'params': httpParams}).then(successFunc, failureFunc); 

URL-адрес попадает, но параметры не принимаются конечной точкой REST.

+0

'$ http.delete (" http: // localhost: 8976/my/url? "+ HttpParams)' – Sravan

+0

Извините, Сраван, это неверно. Вы не можете конкатенировать объект и такую ​​строку. –

+1

'var httpParams = $ .param ({ 'myparam1': 'Hello' });', используйте '$ .param', чтобы преобразовать его в параметры запроса. – Sravan

ответ

1

Для обработки REST FuL вещей, которые вы должны использовать Angular#$resource, которые обеспечивают delete метод на каждом ресурсе object.And можно настроить params, а также в процессе конфигурации ресурсов и создания.

Используя ресурс, вы можете иметь CRUD API без ручной настройки. так, HTTP GET,POST,DELET,PUT метод этого объекта ресурса

Если вы хотите отправить УДАЛИТЬ REST вручную, то лучше передать параметр как string.It запроса не посылает параметр в теле.

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