如何在AngularJS中执行HTTP选项请求?

时间:2013-06-29 02:14:40

标签: http angularjs django-rest-framework angularjs-service http-options-method

AngularJS'$ http服务不提供HTTP选项请求,我非常想拥有它们。

我使用Django REST框架创建了一个Web API,我试图利用它在AngularJS Web应用程序中提供的所有功能。我的Django REST api提供了来自HTTP Options请求的大量数据(例如必填字段,从通过超链接获取连接数据的位置等),我想在Angular应用程序中利用它。

但是,AngularJS'$ http服务似乎不支持原生的Options请求,这使得这个问题非常烦人......我的意思是,如果它不是内置的,那么解决方法就不会很好了。

我尝试了restangular:绝对不是我需要的,因为它不允许我提供我在api中返回的JSON中的超链接,如果我正在解析一个'id'的URL,我会很高兴 - 如果我已经有了URL,那就太傻了。

我看了一下angular-django-rest库:高度不受支持,无法让PUT在我的生活中工作b / c只有$ save()方法,它以某种方式自动选择POST / PUT(? )。

所以,我不知所措!有没有人知道如何在AngularJS中获取HTTP选项请求?

2 个答案:

答案 0 :(得分:4)

$ http支持选项。选项没有声明为$ http.get()或$ http.post()的函数,但您可以通过指定方法并将其直接传递到$ http来指定所需的任何方法。

$http({method: 'OPTIONS', url: '/foo'})

答案 1 :(得分:0)

您还可以使用$resource

$resource(address, {}, {options:{method:'OPTIONS'}});