![]() |
![]() |
|
Запросы к сайту из под 1С8 | ☑ | ||
---|---|---|---|---|
0
lamme
23.03.16
✎
22:06
|
Есть сайт. есть 2 скрипта с параметрами.
Запрос1 тартовыйURL ="mysite.ru"; Прокси = Новый ИнтернетПрокси(); Прокси.Установить("https",СокрЛП(Константы.ProxyСервер.Получить()),Константы.ProxyПорт.Получить()); Прокси.Пользователь = СокрЛП(Константы.ProxyПользователь.Получить()); Прокси.Пароль = СокрЛП(Константы.ProxyПароль.Получить()); SSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows(),Новый СертификатыУдостоверяющихЦентровWindows()); Попытка HTTP = Новый HTTPСоединение(СтартовыйURL,,,, Прокси,, ); Исключение Сообщить("Ошибка подключения: " + ОписаниеОшибки()); КонецПопытки; ФайлРезультата = ПолучитьИмяВременногоФайла("xml"); Адрес = "/scripts/name/?id=123"; сообщить(СтартовыйURL+Адрес); Попытка HTTP.Получить(Адрес, ФайлРезультата ); сообщить("файл1- "+ФайлРезультата ) ; Сообщить("Данные о заявках с сервера получены"); Исключение Сообщить("Ошибка получения данных о заявках с сервера : " + ОписаниеОшибки()); КонецПопытки; Сразу же выполняется запрос2 Адрес = "/scripts/name2/?idm=01.01.2016"; сообщить(СтартовыйURL+Адрес); Попытка HTTP.Получить(Адрес, ФайлРезультата ); сообщить("файл2- "+ФайлРезультата ) ; Сообщить("Данные о заявках с сервера получены"); Исключение Сообщить("Ошибка получения данных о заявках с сервера : " + ОписаниеОшибки()); КонецПопытки; ------------- скрипт1 - выдает <html> <head><title>301 Moved Permanently</title></head> <body bgcolor="white"> <center><h1>301 Moved Permanently</h1></center> <hr><center>nginx/1.8.0</center> </body> </html> срипт2 -выдает то что надо. работает. --------------- если я в браузере вставляю запросы - те mysite.ru/scripts/name/?id=123 и /scripts/name2/?idm=01.01.2016 то сам браузер делает строку такую: https://www.mysite.ru/scripts/name/?id=123 второй https://mysite.ru/scripts/name2/?idm=01.01.2016 (разница в www - в первом скрипте) что со стороны сервера не так настроено в первом скрипте или что можно сделать со стороны 1С - чтобы заработало? Вариант с тартовыйURL ="http://www.mysite.ru"; - не работает. |
|||
1
Записьдампа
23.03.16
✎
22:21
|
Сейчас появится Serginio1 и расскажет тебе, что все это надо делать на .net =)
|
|||
2
Юрий Лазаренко
23.03.16
✎
22:23
|
(0) В первом случае идет 301-й редирект на страницу с "www". Как-то мы это лечили, но дело было давно, сходу не вспомню как.
|
|||
3
lamme
23.03.16
✎
22:24
|
(2)
ЭТО И ПОНЯТНО ЧТО ИДЕТ РЕДИРЕКТ. |
|||
4
lamme
23.03.16
✎
22:24
|
пардон
|
|||
5
Записьдампа
23.03.16
✎
22:25
|
(2) Обращались по адресу из заголовка location? Да ну нафиг, быть нее может =)
|
|||
6
Юрий Лазаренко
23.03.16
✎
22:26
|
Как вариант - использовать ЧтениеHTML и в качестве источника указать не имя файла на локальном компе, а URL.
|
|||
7
lamme
23.03.16
✎
22:27
|
(6)
не понял а пример? |
|||
8
Юрий Лазаренко
23.03.16
✎
22:28
|
или WinHttp.WinHttpRequest, вроде что-то из них помогло нам в свое время в подобной ситуации
|
|||
9
Записьдампа
23.03.16
✎
22:29
|
Для простого get запроса - СкопироватьФайл тоже вполне понимает http схему и умеет ходить по редиректам
|
|||
10
lamme
23.03.16
✎
22:29
|
а почему тогда скрипт1 - корректно работает с https//mysite.ru
? это же что то на сервере настроено хитро? |
|||
11
Юрий Лазаренко
23.03.16
✎
22:29
|
(7) Пример есть в СП:
ЧтениеHTML = Новый ЧтениеHTML; ЧтениеHTML.ОткрытьФайл("c:/docs/data.xml"); Вот вместо "c:/docs/data.xml" указать нужный УРЛ. |
|||
12
lamme
23.03.16
✎
22:30
|
(11)
ок попробую |
|||
13
Serginio1
23.03.16
✎
22:40
|
(1) Ты уже за меня пропагандируешь. Спасибо.
http://its.1c.ru/db/metod8dev#content:5574:hdoc:_top |
|||
14
Записьдампа
23.03.16
✎
22:47
|
(13) Мы тебя ждали 20 минут назад, где тебя носило? =)
|
|||
15
Serginio1
23.03.16
✎
23:09
|
(14) Да и заходить не хотел. Случайно ...
|
|||
16
Сергиус
24.03.16
✎
00:29
|
(0)
SSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows(),Новый СертификатыУдостоверяющихЦентровWindows()); Попытка HTTP = Новый HTTPСоединение(СтартовыйURL,,,, Прокси,, ); Исключение Сообщить("Ошибка подключения: " + ОписаниеОшибки()); КонецПопытки; Попробуй подставить SSL в HTTPСоединение: HTTP = Новый HTTPСоединение(СтартовыйURL,,,, Прокси,,SSL ); |
|||
17
Serginio1
24.03.16
✎
09:59
|
(0) А вообще фиддлер в руки и сравнивай запросы из браузера и свои
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |