2016-12-13 1 views
0

Was sind einige erfolgreiche Methoden zum Ausführen von Cross-Origin Put-Anfragen? Ich habe erfolgreich einen Proxy verwendet, um eine GET-Anfrage zu machen und sie in eine Dropdown-Liste zu setzen, wie hier zu sehen >>Create Dropdown list from API Query >> aber war nicht in der Lage, den gleichen Prozess bei der Erstellung einer PUT-Anfrage zu verwenden?Kreuzherkunft Put Request-Methoden

Gedanken?

Antwort

1

Ich konnte erfolgreich eine PUT-Anfrage erhalten, um nur peachy durch die Verwendung des Proxy in Javascript zu arbeiten.

$.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; 
    } 
}); 

Sobald die Proxy gegründet wurde, habe ich die Chrome-Erweiterung (jetzt eine Desktop-Anwendung) Postman den PUT-HTML-Code zu erhalten. Dazu wurde zunächst die PUT-Anfrage in Postman bearbeitet und dann der "Code" -Link (unterhalb der "Senden" -Schaltfläche) ausgewählt und "JavaScript Jquery AJAX" aus dem Drop-Down-Menü ausgewählt. Hier ist ein Beispiel für ausgegebenen Code von 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); 
}); 

Sobald der Code von Postman kopiert wird, setzen Sie den Proxy-Code und Postman Javascript in eine HTML-Seite und beobachten Sie die PUT-Anfrage passieren.