|
Получить результат запроса на сайт | ☑ | ||
---|---|---|---|---|
0
dimm7310
06.06.13
✎
17:49
|
Необходимо получить результат запроса на сайт
если полную строку запроса поместить в веб броузере , то все отрабатывает нормально , прямо на странице получаю ответ в виде текстовой строки. Допустим полная строка запроса: "https://secure.какойтоСайт.com/search/строкаПараметров" пытаюсь сделать запрос из 1С HTTPСоединение = Новый HTTPСоединение("secure.какойтоСайт.com"); HTTPЗапрос = Новый HTTPЗапрос; HTTPЗапрос.АдресРесурса = "/search/строкаПараметров"; HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос); получаю ошибку: "Server returned nothing (no headers, no data)" подскажите как правильно? |
|||
1
Kreont
06.06.13
✎
18:11
|
На "ОтправитьДляОбработки" нажми Ctrl+f1 там примеры красивые готовые.
|
|||
2
vs1c
06.06.13
✎
18:20
|
HTTPСоединение (HTTPConnection)
По указаному серверу Синтаксис: Новый HTTPСоединение(<Сервер>, <Порт>, <ИмяПользователя>, <Пароль>, <Прокси>, <Таймаут>, <ЗащищенноеСоединение>) Параметры: .. .. <ЗащищенноеСоединение> (необязательный) Тип: Булево. Определяет используемый протокол - http или https. Значение по умолчанию: Ложь Не оно? |
|||
3
dimm7310
06.06.13
✎
18:58
|
добавил ЗащищенноеСоединение = Истина.
и ФайлРезультата = ПолучитьИмяВременногоФайла(); HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос,ФайлРезультата); Теперь ошибки не выдает, но в файле ответа пишет что один из передаваемых параметров неверный |
|||
4
Fragster
гуру
06.06.13
✎
19:00
|
возможно следует прочитать про URLEncode
|
|||
5
dimm7310
06.06.13
✎
19:12
|
(4) Для чего это ? Если это на случай что есть кирилица в URL , в моем случае - нет
|
|||
6
Rie
06.06.13
✎
19:15
|
(0) А ты уверен в сервере? Он правильно обрабатывает твой запрос? Судя по сообщению - он его отвергает напрочь и ничего не возвращает.
|
|||
7
Rie
06.06.13
✎
19:16
|
(3) О! Параметр неверный - сервер тебя посылает. Укажи верные параметры.
|
|||
8
Fragster
гуру
06.06.13
✎
19:18
|
(5) еще пробелы, знаки препинания и т.п. в любом случае - пишу "возможно", потому что саму строку запросы ты не пишешь...
|
|||
9
Rie
06.06.13
✎
19:23
|
(5) А хрен его знает, что в твоём случае. Может, где символ какой затерялся (кроме кириллицы - есть ведь и более другие символы за пределами 7-битного набора). Сделай так, чтобы работало в общем случае - как тебе и посоветовал Fragster.
|
|||
10
dimm7310
06.06.13
✎
19:36
|
я же писал (0), что в броузере целая строка отрабатывает нормально, а если я ее разделяю на сервер в HTTPСоединение и вторая часть в HTTPЗапрос.АдресРесурса, то в файле возвращаемом запросом пишет что первый мною передаваемый параметр с таким-то именем в запросе неправильный.
|
|||
11
Rie
06.06.13
✎
19:41
|
(10) "Где имение, где вода?.."
В браузере у тебя - GET-запрос. А тут вдруг у тебя появляется "вторая часть". Начнём с того, что символы в АдресРесурса - в какой кодировке (си. (5)). Но это - только первый шаг. Ты б рассказал поподробнее... Глядишь, кто-нибудь что-нибудь и присоветовал бы... |
|||
12
Rie
06.06.13
✎
19:49
|
(10) Вообще говоря, серверу глубоко по барабану (в общем случае), кто к нему обращается. И если в HTTPСоединение будет сказано _в точности_ то же, что и в браузере - то и ответ будет тем же.
|
|||
13
dimm7310
06.06.13
✎
21:11
|
сделал запрос так
АдресСкрипта = "/search/строкаПараметров"; HTTPСоединение = Новый HTTPСоединение("secure.какойтоСайт.com"); HTTPСоединение.Получить(АдресСкрипта,ИмяФайлаОтвета); и все заработало. я и начинал с этой же конструкции, только нужно было указать , что соединение защишенное, а я начал мудрить |
|||
14
dimm7310
07.06.13
✎
09:11
|
вернее так
АдресСкрипта = "/search/строкаПараметров"; HTTPСоединение = Новый HTTPСоединение("secure.какойтоСайт.com",,,,,Истина); HTTPСоединение.Получить(АдресСкрипта,ИмяФайлаОтвета); |
|||
15
tmp05
21.06.13
✎
07:03
|
(2) офф, как с вами можно связаться?
|
|||
16
Мэс33
21.06.13
✎
08:36
|
Есть такая софтина Fiddler - позволяет увидеть, какой запрос уходит на сервер и какой ответ приходит.
Можно увидеть все параметры запроса, заголовки и тело запроса. |
|||
17
oleg_km
21.06.13
✎
09:27
|
(17) Ну вот, порушил интригу. После Fiddler'а еще никто на форум не возвращался - все самому становилось ясно
|
|||
18
Мэс33
21.06.13
✎
09:43
|
(17) Ну дык...:-)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |