请求的资源不支持http方法' DELETE'

时间:2017-01-27 16:46:25

标签: javascript c# ajax api

我有一个由Asp API创建的Web服务,我试图通过javascript ajax调用者来使用它...它可以正常使用GET& POST ..但是当我试图调用DELETE函数时它返回消息[请求的资源不支持http方法'删除'。] 这是我的代码

服务器代码(API C#)

NSTimer

客户端代码(Javascript)

[HttpDelete]
        public bool Delete(int id)
        {
            try
            {
                var model = db.PostsLikes.First(f => f.PostLikeID == id);
                db.PostsLikes.Remove(model);
                db.SaveChanges();
                return true;
            }
            catch (Exception)
            {

                return false;
            }
        }

3 个答案:

答案 0 :(得分:2)

问题是您的IIS配置不接受DELETE谓词。在IIS的Handler Mappings部分中,您可以添加Delete动词。

答案 1 :(得分:0)

在删除方法中添加。

[HttpDelete]
[Route("api/PostsLikes/{id}")]

答案 2 :(得分:0)

function DeleteFruitRecord(FruitID) {
var del = confirm("Are you sure you want to delete this recored?");
if (del) {
    $.ajax({
        type: "DELETE",
        url: "api/FruitRec/DeleteFruit" + FruitID,
        contentType: "json",
        dataType: "json",
        success: function (data) {
            alert("Successsfully deleted…. " + FruitID);
            GelAllEmployees();
        },
        error: function (error) {
            alert(error.responseText);
        }
    });
}