ajax - 通过jquery调用删除rest api

标签 ajax api rest jquery

我通过以下代码调用了 GET REST API:

 $.getJSON('http://myapisite.com/user/1?callback=?', function(msg){
         console.log(msg);
      });

但是通过jquery调用DELETE REST API 我尝试过的是:

$.ajax({
  url: 'http://mysite.com/user/1?callback=?',
  type: 'DELETE',
      dataType: 'json',
         data: '',
  success: function(response) { console.log('PUT completed'+response); }
      });.

并且这个API没有被调用,我想知道我应该如何调用DELETE REST API。

谢谢

最佳答案

您正在尝试执行跨域请求。这意味着您不能使用 XMLHttpRequest (AJAX的基础)因为same-origin policy 。您正在使用一种名为 JSONP 的解决方法,它的工作原理是插入 <script>标签到您的文档中。

脚本标记将始终通过 GET 获取内容,因此您无法使用它们执行 DELETE、POST、PUT 等操作。

最好的解决方法是在您自己的服务器上有一个脚本来为您代理 DELETE 请求。

关于ajax - 通过jquery调用删除rest api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4767284/

相关文章:

javascript - 仅重新加载网页的一部分

asp.net-mvc - ASP.NET MVC 4 Web Api 和 REST 经典服务的区别

c# - Perforce API : Repository. GetChangeLists 返回没有文件的列表

python - 使用 OpenStack API 时出现未经授权的错误,无法从 keystone 获取身份验证 token

rest - 轻松 POST 响应的“最佳”实践

java - 是否可以在 Spring Boot 应用程序中发现端点参数?

ajax - 使用 Apache 将 CORS 列入白名单

ajax - Bootstrap Fileinput 在第二次上传时不会再次发送文件

php - 如何在网站中创建过滤器

android - Api Key 将我的应用与 Google map 一起发布到 Google Play