2013-03-27 5 views
5

Ich habe folgende Ajax Beitrag:Ajax Post-Fehler: NETWORK_ERR: XMLHttpRequest Exception 101

$.ajax({ 
    type: "POST", 
    url: "http://192.168.7.9/api", 
    dataType: 'json', 
    data: { username: "john.doe", password: "123456", method: "search_samples" }, 
    success: function (data) { 
     // Never get here 
    }, 
    error: function (XMLHttpRequest, textStatus, errorThrown) { 
     // Always here: if async true, errorThrown has no message 
     // otherwise I se the NETWORK_ERR message 
    } 
}); 

es mit diesem Fehler zurückgibt: NETWORK_ERR: XMLHttpRequest Ausnahme 101.

ich ein paar SO gelesen Beiträge zu diesem Fehler, die meisten suggerieren, dass ich Async auf True setzen. Dies entfernt die Fehlermeldung - aber es ist immer noch ein Fehler, und ich bekomme nie gültige Daten. Es scheint nur die Fehlermeldung zu entfernen, die nicht hilfreich ist.

In Fiddler, auf der gleichen Dev-Maschine funktioniert das perfekt - ist das ein Chrom-Problem? Ein Ursprungsproblem? Stimmt etwas nicht mit meiner Syntax?

+0

Ist dies eine domänenübergreifende Anfrage (d. H. Läuft Ihre Hauptanwendung nicht unter "http: // 192.168.7.9")? – Steve

+0

@Steve Diese Maschinen sind im selben Subnetz, aber die 192.168.7.9 Maschine ist überhaupt nicht in einer Domäne ... – Nicros

Antwort

1

OK, es sieht so aus, als ob Sie Probleme mit der same origin policy bekommen. So wie Sie es tun, können Sie nicht auf AJAX-Daten von einem anderen Server als dem, der Ihre Anwendung hostet, zugreifen.

Um dies zu tun, müssten Sie entweder die http://192.168.7.9/api Funktionalität auf Ihren Server verschieben oder JSONP verwenden, um die Daten zu übertragen. Here ist ein Beispiel dafür.

+0

Bis jetzt kein Glück- Ich versuche, jsonp wie beschrieben zu verwenden, aber ich bekomme jetzt den folgenden Fehler : 'jQuery19108882399478461593_1364424507799 wurde nicht aufgerufen '. Ich denke, ich lese irgendwo den Server selbst muss jsonp unterstützen? Vielleicht ist das was? – Nicros

Verwandte Themen