Zusammenfassung ProblemJQuery Ajax zufällige Fehler in Chrome nur
Nach der Anmeldung mit Chrome über Formularauthentifizierung. Die Zielseite als returnUrl wird mein jQuery ajax Fehler, ohne den Server zu treffen. Die status code = 0
und die message = "error"
. (Kaum nützlich). Nachdem ich Firefox ausprobiert habe und nicht in der Lage bin, das Problem zu replizieren, denke ich, dass Chrome das Problem ist. Caches löschen, schließen und erneut öffnen wird nicht behoben. Der nächste Artikel, den ich finden kann, ist dies. jQuery Ajax - Status Code 0? jedoch die URL relativ ist, /Test
Ein weiterer SO Artikel: jquery ajax problem in chrome
Längere Beschreibung
ich einen Fehler mit jQuery Ajax bin immer. Es scheint, dass sofort nach der Anmeldung mit Formularauthentifizierung; die Zielseite (returnUrl), wird JS Fehler. Nach dem Aktualisieren der Seite (F5) funktioniert das Skript (meistens). Auch wenn Sie F5 nicht verwenden, können Sie mithilfe der JS-Navigation zur gleichen Seite wechseln (meistens). So direkt nach dem Login ist mein Haupttestpfad.
Auch die Navigation in einer anderen Registerkarte zu /Test
Aktion direkt funktioniert. Die ursprüngliche Registerkarte enthält weiterhin Fehler, bis ich sie wie erwähnt navigiere oder aktualisiere.
Ich hatte Zeiten, wo die Navigation oder f5-Aktualisierung den Fehler nicht stoppt. So die Verwendung von "meist" im ersten Absatz.
Nach einem Tag und ein bisschen nicht in der Lage, einen soliden Grund durch Forschung, JS Debugger, Vereinfachung des Codes und verschiedene Szenarien zu finden; Ich muss um Hilfe bitten.
Javascript Fehler Feedback
Die meisten, die ich sammeln kann, ist ein status code of 0
und ein error message of "error"
.
Software und Versionen
ASP.NET MVC 3
Chrome v28.0.1500.72 m
jQuery v1.8.3
AttributeRouting
Mit Chrome, ich habe auch versucht, den Cache und die STRG + F5 Entleerung.
MVC
Ich habe eine von einer [Authorize(Roles = "Admin")]
geschützt Aktion dieses Attribut deaktivieren scheint mein Problem zu lösen und dann auf später nicht. Also, tut mir leid, wenn frühere Aussagen verwechselt wurden. lol, kurz auf die Haare!
[GET("Test")]
public ActionResult Test()
{
Console.WriteLine("Test");
return new EmptyResult();
}
folgenden JavaScript-Skript-Dateien sind nicht hinter einem Ordner, der mit Formularauthentifizierung geschützt ist.
jQuery doc.ready
ich ein jQuery Fehlerereignis haben, die ich verwendet habe, das Debuggen auf zu pausieren, den Inhalt der Objekte zu sehen.
//-- while I am using this method, I have also used the `error: `
//-- part of $.ajax with the same result.
$(function()
{
$(document).ajaxError(function (event, jqxhr, settings, exception)
{
Debug.Log("event: " + event);
Debug.Log("jqxhr: " + jqxhr.responseText);
Debug.Log("settings: " + settings);
Debug.Log("exception: " + exception);
});
});
Ich habe eine jQuery-Methode, die mit den folgenden Ereignissen lädt.Während das folgende Skript aussieht, würde es den Server knallen. Es gibt Timing-Logik, um sicherzustellen, dass es nur alle 5 Sekunden trifft.
$(document).on('mousemove','*',function(e){ TestMethod(this,e,'mousemove');});
Javascript Methode
Das ist mein Ajax-Aufruf, die so einfach ist, wie ich es machen kann.
function TestMethod(sender, e, eventTrgger)
{
$.ajax(
{
type: "GET",
url: '/Test',
dataType: 'html',
success: function (html)
{
//-- tested with nothing here.
}
});
}
Fiddler
Wenn der Fehler auftritt, Fiddler zeigt nicht eine GET-Anforderung, das heißt der Server nicht getroffen wird. Außerdem platziere ich einen Debugger Breakpoint in der Aktion bestätigt, dass die Aktion nicht getroffen wird.
Zusätzlich: Da der Ajax-Aufruf alle 5 Sekunden auftritt. Während auf der Seite und Status-0 und Fehler zu sehen- "Fehler"; Ich lösche den Cache und ohne die Seite zu aktualisieren, beginnt Chrome und die Ajax-Anfrage zu arbeiten. Zur Erinnerung, meine Chrome-Cache-Einstellungen sind auf so wenig Cache eingestellt, wie ich konfigurieren darf.
Die Tatsache, dass das Entfernen von 'AuthorizeAttribute' funktioniert, und die Vorstellung, dass" der Server nicht getroffen wird "scheint völlig disjunkt zu sein. –
Ich habe das Attribut gerade deaktiviert, aber auch zum Login-Formular mit einer returnURL ready navigiert. Das Problem ist aufgetreten. Ich habe das Q aktualisiert, um darauf hinzuweisen, dass es nach dem Lesen ... so viele verschiedene Wege versucht. –
Ich habe ein sehr ähnliches Problem. Erhalte nach einigen Seitenauffrischungen einen Abbruch, und ich denke, es hat mit dem gleichen Problem zu tun. Ist das in Chrome 29 behoben? –