Konvertieren curl cmd zu jQuery $.ajax()

Ich versuche, mich ein api-Aufruf mit jquery-ajax, ich habe curl arbeiten für die api, aber mein ajax ist mit HTTP 500

Habe ich einen curl-Befehl arbeiten, der wie folgt aussieht:

curl -u "username:password" -H "Content-Type: application/json" -H "Accept: application/json" -d '{"foo":"bar"}' http://www.example.com/api

Ich habe versucht, die ajax so, aber es funktioniert nicht:

$.ajax({
    url: "http://www.example.com/api",
    beforeSend: function(xhr) { 
      xhr.setRequestHeader("Authorization", "Basic " + btoa("username:password")); 
    },
    type: 'POST',
    dataType: 'json',
    contentType: 'application/json',
    data: {foo:"bar"},
    success: function (data) {
      alert(JSON.stringify(data));
    },
    error: function(){
      alert("Cannot get data");
    }
});

Was bin ich ?

  • Es sei denn, die API-Unterstützung von cross-domain-Anfrage mit CORS können Sie nicht! Sie können jedoch den ajax-Aufruf von der serverside, und lassen Sie dann den server muss die cURL-Zeug.
  • Ich bin mit kundenspezifische Verpackungen, die nicht blockiert cross-domain-Anfrage, sofern diese denselben Ursprung, wie bekomme ich diese zu arbeiten ?
InformationsquelleAutor krisrak | 2013-11-22
Schreibe einen Kommentar