Автор |
Повідомлення |
Повідомлення створено: 20. 04. 2011 [14:05]
|
gsxr
Андрей Ехлаков
Автор теми
Зареєстрован(а) с: 03.03.2010
Повідомлення: 58
|
Добрый день, в демо примере:
Сокеты -> Выходной транспорт-> testHTTP
Адрес старый - TCP:localhost:10002, проверял доступен, открывает страницу.
Перехожу на вкладку запрос, ввожу запрос : "GET / HTTP/1.0" + два ентера.
нажимаю принять, нажимаю Отправить.
Выдает : "Ресурс временно недоступен" или "время ожидания истекло".
Делаю то же самое в телнете - контент выдается.
В чем проблема?
|
Повідомлення створено: 20. 04. 2011 [14:33]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
Запрос не корректен. У меня такой запрос к серверу oscada.org работает:
GET / HTTP/1.1\r
Host: oscada.org\r
\r
Да и без \r тоже работает.
Флаг "Ожидать таймаута" сброшен?
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 20. 04. 2011 [14:56]
|
gsxr
Андрей Ехлаков
Автор теми
Зареєстрован(а) с: 03.03.2010
Повідомлення: 58
|
"roman" wrote:
Флаг "Ожидать таймаута" сброшен?
В этом собака и зарылась! Спасибо! А в чем проблема, я наоборот его ставил, думал что если сервер не отвечает то попытка отвалится по таймауту. А без галки все мгновенно работает...
|
Повідомлення створено: 20. 04. 2011 [17:47]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"gsxr" wrote:
А в чем проблема, я наоборот его ставил, думал что если сервер не отвечает то попытка отвалится по таймауту. А без галки все мгновенно работает...
И он должен отрабатывать просто ругаться будет на таймаут, но это нормально. Я тут уже неоднократно писал почему это так. В случае с HTTP, ответом может быть большая страница, которая будет идти несколькими кусками. Без таймаута он получит первый кусок и на этом успокоится, поскольку данный механизм запроса ничего не знает об ожидаемом размере ответа и знать не может. С таймаутом он будет ждать всего пока уже ничего в течении указанного интервала времени не будет.
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 20. 04. 2011 [19:05]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"gsxr" wrote:
Выдает : "Ресурс временно недоступен" или "время ожидания истекло".
Какая версия OpenSCADA, кстати? В версии 0.7.1 это сообщение будет только если адрес совсем неправильный, а по таймауту такого сообщения быть не должно.
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 21. 04. 2011 [13:32]
|
gsxr
Андрей Ехлаков
Автор теми
Зареєстрован(а) с: 03.03.2010
Повідомлення: 58
|
"roman" wrote:
Какая версия OpenSCADA, кстати? В версии 0.7.1 это сообщение будет только если адрес совсем неправильный, а по таймауту такого сообщения быть не должно.
0.7.1. В процессе попыток выяснить причину вводил разные запросы и многие из них были конечно же неправильными :)
Было бы неплохо описать для других особенности этой вкладки "запрос", а к тому же не программисты не сразу догадаются что \r нужно писать вручную в запросе, а \n скада сама добавляет.
|
Повідомлення створено: 21. 04. 2011 [14:28]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"gsxr" wrote:
Было бы неплохо описать для других особенности этой вкладки "запрос", а к тому же не программисты не сразу догадаются что \r нужно писать вручную в запросе, а \n скада сама добавляет.
Добавил выбор "Бинарный;Текст(LF);Текст(CR);Текст(CR/LF)".
Добавил подсказку к этой опции и описано тут: http://wiki.oscada.org/Doc/OpisanieProgrammy#h827-4
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 20. 12. 2011 [11:04]
|
gsxr
Андрей Ехлаков
Автор теми
Зареєстрован(а) с: 03.03.2010
Повідомлення: 58
|
Существует ли пример использования выходного транспорта testHTTP в Демо станции? В контексте обобщенной в данной теме задачи парсинга веб страницы, содержащей некие переменные в текстовом виде.
Спасибо.
|
Повідомлення створено: 20. 12. 2011 [11:43]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"gsxr" wrote:
Существует ли пример использования выходного транспорта testHTTP в Демо станции? В контексте обобщенной в данной теме задачи парсинга веб страницы, содержащей некие переменные в текстовом виде.
Тот который в документации чем не устроил? http://wiki.oscada.org/Doc/HTTP#h90-5
Парсинг HTML это отдельный вопрос. Если это XHTML или XML то можно через объект XMLNodeObj (http://wiki.oscada.org/Doc/OpisanieProgrammy#h920-5), иначе руками или регулярными выражениями.
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 20. 12. 2011 [12:26]
|
gsxr
Андрей Ехлаков
Автор теми
Зареєстрован(а) с: 03.03.2010
Повідомлення: 58
|
"roman" wrote:
"gsxr" wrote:
Существует ли пример использования выходного транспорта testHTTP в Демо станции? В контексте обобщенной в данной теме задачи парсинга веб страницы, содержащей некие переменные в текстовом виде.
Тот который в документации чем не устроил? http://wiki.oscada.org/Doc/HTTP#h90-5
Парсинг HTML это отдельный вопрос. Если это XHTML или XML то можно через объект XMLNodeObj ( http://wiki.oscada.org/Doc/OpisanieProgrammy#h920-5), иначе руками или регулярными выражениями.
Для непрограммистов недоходчиво...
Нет описания примера создания и использования какого то промежуточного контроллера (предполагаю сбор данных - вычислитель на джава подобном языке). Нет частного примера получения чего-либо, простого выделения и использования.
|