Я получаю ошибку, что означает, что он не будет выполнять мой метод удаления от углового:DELETE в angularjs - 405 Метод не допускаются
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();
};
};
};
подхода щей части HTML-код в index.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>
И мой сценарий импорта:
<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>
Возможно, это глупость, я не совсем уверен, что работает надстройка и обновление? Моя первая мысль заключалась в том, что это может быть какой-то внешний ключ, но я пытался удалить элемент с использованием SQL-сервера, и он работал нормально.
Добавлено фоновый:
// 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);
}
Это означает, что ваш веб-сервер не в состоянии поддерживать этот УДАЛИТЬ метод запроса. Вы либо настраиваете его, либо используете POST. – dfsq
Создайте и отправьте запрос (удалите по указанному URL-адресу) с помощью скрипача, и вы увидите там эту ошибку. Я имею в виду, что что-то неправильно в задней системе. Пожалуйста, предоставьте некоторые детали из кода сервера. –
Добавлено backend now – btmach