Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Вывод alert с ошибкой от сервера при Ajax запросе / 18 сообщений из 18, страница 1 из 1
04.08.2015, 11:31
    #39022372
vladimir74
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
Доброго времени суток.

есть несколько Ajax запрсов, которые изменяют данные. Нужно вывести alert сообщение (сообщение будет передано с сервера) в случае логической ошибки.
PS работаем без jQuery с чистым Javascript-ом :(
...
Рейтинг: 0 / 0
04.08.2015, 11:32
    #39022373
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
и в чем проблема?
...
Рейтинг: 0 / 0
04.08.2015, 11:39
    #39022380
vladimir74
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
Antonariyи в чем проблема?
проблема что не могу вывести :( подскажи как.

Вот простейшая ф-ция ответа. как сделать,так что в случае ошибки, показать alert сообшение?

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
function processReqChange(){
var statusElem = document.getElementById(divname)
try {
if (req.readyState == 4) {
  if (req.status == 200) {
    statusElem.innerHTML=( req.responseText);
   } else {
     alert("Server dont answer:\n" +
     req.statusText);
   }
 }
}catch( e ){}
}
...
Рейтинг: 0 / 0
04.08.2015, 11:51
    #39022398
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
Вместе с текстом ошибки с сервера должен быть передан http статус 500, а обработчик должен иметь примерно такой вид:

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
    xhr.onreadystatechange = function () {
        if (xhr.readyState == 4) {
            if (xhr.status == 200) {
                //все нормально
            } else if (xhr.status == 500) {
                alert("При обработке запроса на сервере произошла ошибка:\r\n" + xhr.responseText);
            } else if (xhr.status == 404) {
                alert("Не удалось найти данный ресурс:\r\n" + url);
            } else {
                alert("При выполнении запроса произошла ошибка (статус" + xhr.status + "):\r\n" + xhr.responseText);
            }
        }
    }
...
Рейтинг: 0 / 0
04.08.2015, 11:56
    #39022406
vladimir74
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
Antonariy,

хммм, я даже не знаю, как я из Oracle можно скинуть статус 500. Надо посмотреть.
...
Рейтинг: 0 / 0
04.08.2015, 12:01
    #39022416
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
vladimir74, а HTTP запросы прямо Oracle у Вас обрабатывает?
...
Рейтинг: 0 / 0
04.08.2015, 12:04
    #39022417
vladimir74
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
skyANA,

в данном случае да. :(
...
Рейтинг: 0 / 0
04.08.2015, 12:10
    #39022424
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
vladimir74skyANA,

в данном случае да. :(throw('текст ошибки') есть в оракле? возможно как раз оно и создает статус 500
...
Рейтинг: 0 / 0
04.08.2015, 12:35
    #39022478
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
vladimir74skyANA,
в данном случае да. :(
APEX? Хранимка? Или что конретно?
...
Рейтинг: 0 / 0
04.08.2015, 12:43
    #39022486
vladimir74
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
Petro123,

APEX было бы круто :(.


старый модуль это обычные PLSQL процедуры/пакеты.
отправка данных HTP и UTL_HTTP
...
Рейтинг: 0 / 0
04.08.2015, 12:57
    #39022511
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
vladimir74,
ну и пиши статус сам. Там же всё руками.
Если не найдена карточка товара с ID=334445, то пиши в xhr.responseText свойКодОшибки 12345 для техподдержки.
+ HTTP.Error тот который нужно.
...
Рейтинг: 0 / 0
04.08.2015, 12:58
    #39022514
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
vladimir74APEX было бы круто
он бесплатный. Считай никого спрашивать не надо)).
...
Рейтинг: 0 / 0
04.08.2015, 13:02
    #39022523
vladimir74
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
Petro123vladimir74APEX было бы круто
он бесплатный. Считай никого спрашивать не надо)).
знаю, но как я понял под него надо подстроить структуру, а на это никто дабро не даёт.
Хотя если честно, надо посидеть и хорошо разобраться, может смогу заставить воспользоваться этим зверем..
...
Рейтинг: 0 / 0
04.08.2015, 13:12
    #39022536
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
vladimir74надо подстроить структуру
шутка? У него своя схема для этого.
Таму любого ITEMS контрола есть источник select ТвоёПоле from ТвояТабла.
Там только поначалу урл смешной у приложений. Но решаемо.
...
Рейтинг: 0 / 0
04.08.2015, 14:07
    #39022586
vladimir74
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
Petro123vladimir74надо подстроить структуру
шутка? У него своя схема для этого.
Таму любого ITEMS контрола есть источник select ТвоёПоле from ТвояТабла.
Там только поначалу урл смешной у приложений. Но решаемо.
не, я имел в виду на web сервере надо что то делать.
Хотя посыпая голову пеплом, признаю, что сам лично не разбирался, и потому говорю это только со слов одного нашего админа.
...
Рейтинг: 0 / 0
04.08.2015, 14:13
    #39022590
vladimir74
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
ладно, переделал немного. Запаковал ошибку в xml и в javascript-е проверяю его. ИМХО через ж, но работает.
...
Рейтинг: 0 / 0
04.08.2015, 14:28
    #39022602
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
vladimir74не, я имел в виду на web сервере надо что то делать.
- на каком веб сервере?
Самый простой, как у нас:
- встроенный веб сервер в оракле (при установке отметить галкой)
- при уст-ке APEX открыть порт 8080
Код: sql
1.
2.
3.exec dbms_xdb.sethttpport(8080);
4.проверка - SELECT DBMS_XDB.GETHTTPPORT FROM DUAL;


- всё. У нас так в продакшене)).
...
Рейтинг: 0 / 0
04.08.2015, 14:30
    #39022603
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод alert с ошибкой от сервера при Ajax запросе
vladimir74со слов одного нашего админа.
админы не заинтересованы)). Им легче когда ты всё руками пишешь.
Удачи!
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Вывод alert с ошибкой от сервера при Ajax запросе / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]