Jquery ajax būsenos kodas 0?

Dėl kokių nors priežasčių mano sukurta „ dashcode“ programa tiesiog sustojo AJAXing ir grąžina būsenos kodus 0. Ar tai atsitiko su jumis? Ar kas nors turi idėją, kodėl tai vyksta?

107
04 янв. tarnfeld nustatyti sausio 04 2010-01-04 19:35 '10, 19:35, 2010-01-04 19:35
@ 17 atsakymų

Kitas atvejis:

Jei gavote AJAX skambutį, galite gauti 0 būsenos kodą ir, prieš gaunant AJAX atsakymą , įsijungė naršyklės naujinimas. AJAX skambutis bus atšauktas, ir jūs gausite šį statusą.

83
27 сент. atsakymas pateikiamas 27 sep . 2012-09-27 15:56 '12 15:56 2012-09-27 15:56

Mano patirtis parodys būseną 0, kai atliksite skriptus tarp svetainių (kai prieiga neleidžiama) arba neprieinama URL užklausa (typo, DNS problemos ir tt).

border=0
71

Nors tai tikriausiai nesusiję su prietaisų , šis „StackOverflow“ klausimas kyla, kai veikia „jQuery“ ir „AJAX“ būsenos kodas 0, todėl maniau, kad pasiūlysiu atsakymą tiems, kurie šią problemą turėjo kitais atvejais. Neseniai susidūriau su šia problema ir suradau naudingų nuorodų:

16
17 июня '10 в 18:19 2010-06-17 18:19 atsakymas pateikiamas justkt birželio 17 d., 10 val., 18:19, 2010-06-17 18:19

Ta pati problema, kai naudojamas <button onclick="">submit</button> . Tada jis bus išspręstas naudojant <input type="button" onclick="">

8
13 марта '14 в 0:16 2014-03-13 00:16 atsakymas pateikiamas Rafi kovo 14 d. 14 val. 0:16 2014-03-13 00:16

Svarbu pažymėti, kad „ajax“ skambučiai gali nepavykti net sesijos metu, kurią apibrėžia slapukas su tam tikru domenu, prieš tai pridedamas www. Tada, pavyzdžiui, pasinaudosite savo PHP scenarijumi. be www. prefiksas, skambutis nepavyksta ir atvirkščiai.

6
03 сент. atsakymas pateikiamas nuxxxx 03 sep . 2012-09-03 14:54 '12, 14:54 val. 2012-09-03 14:54

0 būsenos kodas reiškia, kad prašomas URL nėra. Pakeitus http: // kažką / kažką į https: // kažką / kažką , jis dirbo man, IE išmeta klaidą, sakydamas „leidimas atmestas“, kai būsenos kodas yra 0, kitos naršyklės neveikia.

5
23 июня '11 в 20:03 2011-06-23 20:03 Atsakymą pateikė Jagadeesh 2011 m. Birželio 23 d . 20:03 2011-06-23 20:03

http://markos.gaivo.net/blog/?p=109 - Tai padėjo man. Aš atsiųsiu formą per AJAX ir pamiršau naudoti return false (po mano ajax užklausos), kuri lėmė klasikinės formos pristatymą, bet, keista, ji nebuvo baigta.

3
13 марта '12 в 0:35 2012-03-13 00:35 Atsakymą pateikė Martin Vseticka kovo 13 d., 12 val. 0:35 2012-03-13 00:35

„Atsitiktinis“ formos pristatymas buvo būtent problema, su kuria susidūriau. Aš visiškai ištrinau FORM žymes, o tai, atrodo, išsprendžia problemą. Ačiū, visi!

2
08 авг. Atsakymą pateikė Insider Pro 08 rug. 2012-08-08 22:54 '12, 10:54 val. 2012-08-08 22:54

Radau kitą atvejį, kai jquery suteikia jums statuso kodą 0 - jei dėl kokios nors priežasties XMLHttpRequest nėra apibrėžta, gausite šią klaidą.

Akivaizdu, kad tai paprastai neįvyksta internete, bet klaidos naktiniame „Firefox“ kūrime sukėlė jį parašytame papildyme. :)

2
08 апр. atsakymas pateikiamas 08 balandžio mėn. 2012-04-08 00:51 '12 ne 0:51 2012-04-08 00:51

Turėjau tą pačią problemą, ir ji buvo susijusi su „XSS“ bloku (skriptų per svetaines). Man pavyko jį dirbti su serveriu.

Pažvelkite: http://www.daniweb.com/web-development/javascript-dhtml-ajax/threads/282972/why-am-i-getting-xmlhttprequest.status0

2
21 марта '14 в 17:01 2014-03-21 17:01 atsakymą įteikė Ricardo Rivaldo kovo 14 d. 14 d. 17:01 2014-03-21 17:01

Kadangi jis pasirodo, kai „Google ajax“ statusas 0, aš norėjau palikti patarimų, kuriuos tiesiog praleidžiau daug laiko ... Aš naudoju ajax skambinti PHP paslauga, kuri buvo „Rign_Controller“ „Codeigniter“ (nežinote, ar jis turi kažką daryti su juo) ir toliau gavo 0 būseną, perskaito 0, ir tai privertė mane beprotiškai. Aš ją derinau ir pastebėjau, kai atsikartosiu ir sugrįšiu, o ne palieku gautą pranešimą. Galiausiai, aš išjungiau derinimą ir bandžiau, ir jis dirbo. Atrodo, kad xDebug debugger su PHP kažkaip pakeitė atsakymą. Jei naudojate PHP derintuvą, pabandykite jį išjungti, kad pamatytumėte, ar jis padeda.

2
08 февр. Atsakymas, kurį pateikė michael 08 Feb. 2012-02-08 21:34 '12 at 9:34 pm 2012-02-08 21:34

Turėjome panašią problemą - statuso kodą 0, skirtą „Jquery ajax“ skambučiui - ir tai užtruko visą dieną diagnozuoti. Kadangi niekas dar nepaminėjo šios priežasties, aš maniau, kad tai pasidalinu.

Mūsų atveju problema susijusi su HTTP serverio gedimu. Kai kurios PHP klaidos „Apache“ pučia, todėl kliento pusėje atrodė taip:

 mirek@toccata:~$ telnet our.server.com 80 Trying 180.153.xxx.xxx... Connected to our.server.com. Escape character is '^]'. GET /test.php HTTP/1.0 Host: our.server.com Connection closed by foreign host. mirek@toccata:~$ 

kur test.php yra gedimo kodas. Iš serverio negrąžintų duomenų (net antraščių) => ajax skambutis buvo nutrauktas su 0 būsena.

1
17 дек. Atsakymas pateikiamas „ Jmper“ 17 d. 2013-12-17 20:07 '13, 20:07, 2013-12-17 20:07

Mano atveju tai sukėlė mano „django“ serverio paleidimas „ http://127.0.0.1:8000/ , bet skambinant į ajax adresu http://localhost:8000/ . Nors tikitės, kad jie bus susieti su tuo pačiu adresu, jie to nepadaro, kad jūsų užklausos nebūtų siunčiamos „localhost“.

1
18 дек. Atsakymas suteikiamas Vladui Schnakovszki 18 d. 2014-12-18 01:56 '14 ne 1:56 2014-12-18 01:56

Manau, kad žinau, kas gali sukelti šią klaidą.

„Google chrome“ yra įmontuota funkcija, leidžianti išvengti „ddos“ atakų „Google“ chromo plėtiniams.

Kai ajax užklausos nuolat sugrąžina 500 + būsenos klaidas, ji pradeda drebėti užklausas.

Todėl galite gauti būseną 0 šiems užklausoms.

0
08 мая '17 в 5:18 2017-05-08 05:18 atsakymą pateikė Anoniminis gegužės 08 d. 17 d

Mano atveju, nustatant url: '' ajax nustatymuose, būsenos kodas 0 būtų i8. Atrodo, kad tai paprasčiausiai netoleruoja tokio nustatymo.

0
11 марта '12 в 10:18 2012-03-11 10:18 atsakymas pateikiamas blurrcat kovo 11, 12, 10:18 2012-03-11 10:18

Man tai sukėlė problema dėl to, kad prieglobos kompanija („Godaddy“) laikė POST operacijas, kuriose buvo pateikti dideli atsako duomenys (iš viso daugiau nei dešimtys kilobaitų) kaip saugumo rizika. Jei daugiau nei 6 iš jų įvyko per vieną minutę, priimančioji atsisakė vykdyti PHP kodą, kuris atsakė į POST užklausą per kitą minutę. Aš ne visai tikiu, ką vietoj priimančioji padarė, bet pamačiau, kad TCPdump paketas ateina atsakant į POST užklausą iš naršyklės. Dėl to „jqXHR“ objekto grįžtamasis „http“ būsenos kodas buvo 0.

Pakeitus operacijas iš POST į GET pataisoma problema. Neaišku, kodėl „Godaddy“ nustato šią ribą, tačiau kodo keitimas buvo paprastesnis nei priimančiosios keitimas.

0
31 июля '14 в 11:15 2014-07-31 11:15 atsakymas pateikiamas emrys57 liepos 31 d. 14 , 15:15 2014-07-31 11:15

Bandant laimėti prizą už labiausiai neapibrėžtą minėtos problemos priežastį.

Pamirškite skambinti

 xmlhttp.send(); //yes, you need this pivotal line! 

Taip, atviro kvietimo metu aš vis dar turiu nulinę būseną.

0
29 июня '17 в 3:55 2017-06-29 03:55 atsakymą pateikė Gordonas Rouse , birželio 29 d. 17, 03:55 2017-06-29 03:55

Kiti klausimai apie „ žymes arba Ask a Question