Javascript 不允许在angularjs-405方法中删除

Javascript 不允许在angularjs-405方法中删除,javascript,angularjs,Javascript,Angularjs,我得到的错误,这意味着它不会从angular执行我的delete方法: DELETE http://localhost:49717/api/Item?iid=D1 405 (Method Not Allowed) 我的app.js 'use strict'; var SalesApp = angular.module('SalesApp', ['ngRoute', 'ngResource']). config(['$routeProvider', function ($routeP

我得到的错误,这意味着它不会从angular执行我的delete方法:

DELETE http://localhost:49717/api/Item?iid=D1 405 (Method Not Allowed)
我的app.js

'use strict';

var SalesApp = angular.module('SalesApp', ['ngRoute', 'ngResource']).
     config(['$routeProvider', function ($routeProvider) {
        $routeProvider.
            when('/', { controller: ItemCtrl, templateUrl: 'item.html' }).
            when('/new', { controller: CreateCtrl, templateUrl: 'details.html' }).
            when('/edit/:editId', { controller: EditCtrl, templateUrl: 'details.html' }).
            otherwise({ redirectTo: '/' });
     }]);

SalesApp.factory('Item', function ($resource) {
    return $resource('/api/Item/:id', { id: '@id' }, { update: { method: 'PUT' } });
});




var ItemCtrl = function ($scope, $location, Item) {    

    $scope.delete = function () {
        var id = this.item.iid;
        Item.delete({ iid: id }), function () {
            $('#item_' + id).fadeOut();
        };
    };
};
index.html的html的适当部分

<tbody>
        <tr ng-repeat="item in items" id="item_{{item.iid}}">
            <td>{{item.iid}}</td>
            <td>{{item.name}}</td>
            <td>{{item.price}}</td>
            <td><a ng-click="delete()">X</a></td>
            <td><a href="#/edit/{{item.iid}}"><div class="edit">Edit</div></a></td>
        </tr>
    </tbody>

您需要将以下代码放在
$http({url:“您的url在这里”,方法:“DELETE”,参数:{your parameters}})
行以确保删除有效

$http.defaults.headers[“delete”]={
“内容类型”:“应用程序/json,字符集=utf-8”

};

这意味着您的Web服务器无法支持此删除请求方法。您可以配置它,也可以使用fiddler使用POST.Create和send请求(在指定的url上删除),您将看到此错误。我的意思是后端系统出了问题。请从后端代码中提供一些详细信息。
<script src="Scripts/jquery-1.9.1.js"></script>
    <script src="Scripts/angular.js"></script>
    <script src="Scripts/angular-resource.js"></script>
    <script src="Scripts/app.js"></script>
    <script src="Scripts/angular-resource.js"></script>
    <script src="Scripts/angular-sanitize.js"></script>
    <script src="Scripts/angular-animate.js"></script>
    <script src="Scripts/angular-touch.js"></script>
    <script src="Scripts/angular-route.js"></script>
// DELETE api/Item/5
        [ResponseType(typeof(Item))]
        public IHttpActionResult DeleteItem(string id)
        {
            Item item = db.Item.Find(id);
            if (item == null)
            {
                return NotFound();
            }

            db.Item.Remove(item);
            db.SaveChanges();

            return Ok(item);
        }