javascript - XMLHttpRequest 无法加载 URL。无效的 HTTP 状态代码 400

标签 javascript angularjs asp.net-web-api

我有 WebApi 应用程序和一个 MVC5 应用程序。我正在使用 MVC5 应用程序中的 angularJS 向 webApi 发送请求。但是当我发送 DELETE 或 POST 请求时,它无法正常工作。我收到“XMLHttpRequest 无法加载 URL”消息。浏览器中出现无效的 HTTP 状态代码 400' 错误。但对于 GET 请求,它工作正常。请参阅下面的代码。

服务电话

  $http.delete("http://localhost:8643/api/values/1");

WebAPI

 // DELETE api/values/5

    [HttpDelete]
    public void Delete(int id)
    {
        var emp = employees.FirstOrDefault(x => x.ID == id);

        if(emp!=null)
        {
            employees.Remove(emp);
        }
    }

即使我已经在我的 WebApi 中启用了 Cors。 谁能帮帮我吗?

最佳答案

对于帖子,尝试将 $.param 添加到您的对象,并指定内容类型。 类似这样的事情。

$http({
              method: "POST",
              url: "http://localhost:8643/api/values",
              data: $.param({'Type': 'Type', 'Name': 'Name'}),
              headers: {'Content-Type': 'application/x-www-form-urlencoded',}
            })

希望这会有所帮助。 至于Delete和Put,我自己仍然遇到问题。

关于javascript - XMLHttpRequest 无法加载 URL。无效的 HTTP 状态代码 400,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25717586/

相关文章:

javascript - jsfiddle 无法显示 EXTJS 4 的正确 GUI

javascript - 如何将点击事件添加到动态id

authentication - 默认情况下,WebAPI 中的 Authorize 属性有何作用?

javascript - 带有 moment.js 的字符串值

angularjs - 使用 typescript 将文件上传到 Controller

c# - ASP.NET Core Web API 自动 JSON 参数反序列化不起作用

javascript - 如何根据 URL 中的某些文本选择 anchor 元素?

javascript - 不可变的 js 从列表映射中创建列表

javascript - Angularjs promise 在单元测试中未得到解决

javascript - 纯js中的foreach循环,检查匹配