Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   XMLHttpRequest - wtf? (https://javascript.ru/forum/offtopic/44704-xmlhttprequest-wtf.html)

cyber 29.01.2014 21:20

XMLHttpRequest - wtf?
 
у XMLHttpRequest есть событие onerror, либо я чего то не в курю, либо по каким то магическим причинам оно не вызываеться при 404, тогда смысел от него если всеравно нужно обрабатывать "onloadend" ?

monolithed 29.01.2014 22:48

Цитата:

Сообщение от cyber
у XMLHttpRequest есть событие onerror, либо я чего то не в курю, либо по каким то магическим причинам оно не вызываеться при 404

А почему оно должно вызываться в этом случае?
404 это HTTP-статус ответа не более того.
Событие onerror вызывается когда происходит ошибка на сетевом уровне (не прошел коннект по причине политики безопасности, отсутствует соединение с сервером).

cyber 29.01.2014 23:06

Цитата:

Сообщение от monolithed
А почему оно должно вызываться в этом случае?
404 это HTTP-статус ответа не более того.
Событие onerror вызывается когда происходит ошибка на сетевом уровне (не прошел коннект по причине политики безопасности, отсутствует соединение с сервером).

я имел ввиду почему если файл нет файла то это не считаеться ошибкой?

monolithed 29.01.2014 23:35

Цитата:

Сообщение от cyber
я имел ввиду почему если файл нет файла то это не считаеться ошибкой

Это для тебя чего-то там нет, но твой сервер так не считает, т.к. прекрасно отдает ответ.
Статус ответа сервера может быть хоть 100500, и что считать ошибкой должен только ты и никто другой.

cyber 29.01.2014 23:37

Цитата:

Сообщение от monolithed
Это для тебя его чего-то там нет, но твой сервер так не считает, т.к. прекрасно отдает ответ.

хм, понятно.

Maxmaxmaximus7 30.01.2014 07:11

Цитата:

Сообщение от cyber
я имел ввиду почему если файл нет файла то это не считаеться ошибкой?

потому что этот обьект отвечает за соединения, а ошибки в соединении не было, был запрос на файл и пришел ответ что файла нет. запрос дошел? ответ дошел. ошибки нет. а вот ВЫШЕ УРОВНЕМ это уэе ты читаешь ответ, статус там и прочее, и решаел была ли это ошибка на уровне твоего приложения или нет. пнятна)?

Иными словами onerror это ошибка сетевого уровня. А ты ищешь ошибку уровня приложения) а это уже твоя головушка должна её отлавливать и обрабатывать) XMLHttpRequest о ней ничего не знает) он не знает что это ошибка)

То что ты спросил это то же самое что спросить "почему XMLHttpRequest не отлавливает ошибку ведь пользователь с таким именем уже существует)?"

я бы тебе рекомендовал для работы с сервером написать свой обьект) который бы генерировао ошибки повыше уромнем. у него были бы методы, промисы и прочее) ну ты пони. работа с api серевра на уровне приложения

cyber 30.01.2014 20:17

Цитата:

Сообщение от Maxmaxmaximus7
ну ты пони

сам ты пони:)

Maxmaxmaximus7 30.01.2014 20:21

ты пони

cyber 30.01.2014 20:39

Цитата:

Сообщение от Maxmaxmaximus7
ты пони

нет, ты и вообще обоснуй почему я пони?

cyber 30.01.2014 20:42

Maxmaxmaximus7, не могу найти, в js есть свой класс ошибок что типо HttpError или самому нужно замутить?)


Часовой пояс GMT +3, время: 00:22.