Имя: Пароль:
1C
1С v8
WinHttpRequest
0 MultIfleX
 
02.02.12
15:35
Суть проблемы: при авторизации на одном WEB сервере через Http=новый COMОбъект("WinHttp.WinHttpRequest.5.1")..., производится автоматический редирект на другую страницу, и я не могу получить исходные заголовки через Http.GetAllResponseHeaders(), чтоб запомнить куки. Есть способ отключить авто редирект - это выставить свойство Option с индексом 6 в False - точнее в примере на МСбейсике так:

Http.Option(6)=False

Но в 1с данное выражение не имеет смыла. Читая Http.Option(6) я получаю Истина, при этом Option - это именно Свойство (как написано тут http://msdn.microsoft.com/en-us/library/windows/desktop/aa383998(v=vs.85).aspx - это НАБОР ОПЦИЙ), а не метод. Подскажите, как задать значение ?
1 smaharbA
 
02.02.12
15:39
используй обертку
2 MultIfleX
 
02.02.12
15:42
Если не трудно, расскажи подробнее, что имеется ввиду
3 MultIfleX
 
02.02.12
16:01
Так я и использую по факту IWinHttpRequest интерфейс (описание http://msdn.microsoft.com/en-us/library/windows/desktop/aa383979(v=vs.85).aspx ), вот у него и не могу поменять свойство Option
4 MultIfleX
 
02.02.12
16:04
Пробовал писать Http.Option(6,Ложь) - ничего не происходит, Http.Option(6) читается как Булево = Истина
5 Kreont
 
02.02.12
16:10
Может через:
Option  = Новый Соответствие();
6 MultIfleX
 
02.02.12
16:15
Соотв = новый Соответствие;
Соотв.Вставить(6,Ложь);
Http.Option = Соотв;
---> не прошло...
Ошибка при установке значения атрибута контекста (Option): Произошла исключительная ситуация (WinHttp.WinHttpRequest): Запрашиваемый заголовок не найден
7 zzhiraf
 
02.02.12
16:19
Скрипт=Новый COMОбъект("MSScriptControl.ScriptControl");
   Скрипт.language="javascript";
   ХТТПЗапрос = Новый COMОбъект("WinHttp.WinHttpRequest.5.1");
   Скрипт.AddObject("ХТТПЗапрос",ХТТПЗапрос);
   Скрипт.Eval("ХТТПЗапрос.Option(2)=1251");
8 Kreont
 
02.02.12
16:20
Может атк скорей всего:
Соотв.Вставить("WinHttpRequestOption_EnableRedirects","0");
9 Kreont
 
02.02.12
16:21
Или так:)))
Соотв.Вставить("6","0");
10 oleg_km
 
02.02.12
16:25
ТАк а попробуй просто присвоить:

Http.Option(6) = Ложь:
11 MultIfleX
 
02.02.12
16:27
(7) Спасибо, то что нужно. Работает как часы.
(8) не получилось
(10) 1с считает Http.Option(6) методом, соответственно Http.Option(6) = Ложь - неопознанный оператор.
12 zzhiraf
 
02.02.12
16:29
(11) На здоровье
13 zzhiraf
 
02.02.12
16:31
а у меня другая так и не решенная до сих пор проблема v8: WinHttp.WinHttpRequest.5.1 ntlm аутентификация на прокси сервере
14 MultIfleX
 
02.02.12
16:46
(13) Прочитал топик. К сожалению, к тому что там уже сказано, мне добавить нечего, никогда не сталкивался с прокси...