Cross Origin Put Request方法

时间:2016-12-13 22:29:25

标签: ajax api proxy cross-domain put

执行Cross Origin Put请求有哪些成功的方法?我成功地使用代理发出GET请求并将其放入下拉列表中,如此处所示>> Create Dropdown list from API Query>>但是在制作PUT请求时无法使用相同的流程?

思考?

1 个答案:

答案 0 :(得分:1)

通过在javascript中使用代理,我能够成功获得PUT请求才能正常工作。

$.ajaxPrefilter( function (options) {
  if (options.crossDomain && jQuery.support.cors) {
    var http = (window.location.protocol === 'http:' ? 'http:' : 'https:');
    options.url = http + '//cors-anywhere.herokuapp.com/' + options.url;
    //options.url = "http://cors.corsproxy.io/url=" + options.url;
  }
});

代理建立后,我使用chrome扩展程序(现在是桌面应用程序)Postman来获取PUT HTML代码。这是通过首先让PUT请求在Postman中工作然后选择“代码”链接(在“发送”按钮下面)并从下拉列表中选择“JavaScript Jquery AJAX”来完成的。以下是Postman输出代码的示例。

var settings = {
"async": true,
"crossDomain": true,
"url": "https://[apiurl].com",
"method": "PUT",
"headers": {
  "content-type": "text/xml",
  "cache-control": "no-cache",
  "postman-token": "[token]"
},
 "data": "<this_is_the_xml_data_youre_sending>"
 }

$.ajax(settings).done(function (response) {
  console.log(response); 
});

从Postman复制代码后,将代理代码和Postman javascript放入HTML页面并观察PUT请求。