【发布时间】:2014-06-16 16:50:09
【问题描述】:
我正在使用 Angular JS + CORS + Web API。我能够为 GET、POST 和 PUT 发出 HTTP 请求。但是,我在请求“DELETE”时遇到错误。
"请求的资源不支持 http 方法 'DELETE'。" 我的网络 api 代码是:
public void Delete(int id)
{
//code to remove data from DB.
}
我的 WebApiConfig 类有以下设置
public static void Register(HttpConfiguration config)
{
config.EnableCors(new EnableCorsAttribute("*", "*", "*"));
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
public IEnumerable<Entity> Get()
{
return <List<Entity>>;
}
我的客户代码是:
$http({
method: 'DELETE',
url: 'http://example.com/api/<controller>/',
data: {id :uId}
}).success(function (data, status) {
aleert('success');
}).error(function (data, status) {
alert('error');
});
$http({
method: 'GET',
url: 'http://example.com/api/<controller>'
}).success(function (data, status) {
alert('success');
}).error(function (data, status) {
alert('error');
});
我错过了什么?非常感谢任何帮助。
【问题讨论】:
-
能否添加 GET 的 web api 代码和 GET 调用的客户端代码?
-
这是我的 GET Web API 代码: public IEnumerable
Get() { return - > } 这是客户端对 GET 的调用:$http({ method: 'GET' , url: 'X-Domain-site here ie example.com/api/action' }).success(function (data, status) { // 在这里执行你的操作 }).error(function (data, status) { alert('error' ); });如果您希望修复特定错误,请告诉我,以便我可以分享我的摘录。
-
能否请您编辑您的问题并将代码放在那里
-
完成。如果您需要任何帮助,请告诉我。
标签: angularjs asp.net-web-api cors