ПредишенСледващото

Работа с бисквитка в TWebBrowser компонент (четене, uchtanovka)

Тук имаше един въпрос по отношение на бисквитката и TWebBrowser компонент.
Въпросът ми е в две части

1) В първата част се отнася до подготовката на бисквитките
2) втора част - прехвърляне / монтирането на бисквитки преди страницата за отваряне

В първата част на въпроса реши в интернет е достатъчно документация за това как бисквитки може да се разглежда като се използва интерфейса OLE, а именно,

myCookie: = (WebBrowser1.Document като IhtmlDocument2) .cookie;

Но втората част е много по-трудно. Търсене тук за дълго време стигна до това заключение, след като бисквитката се предава чрез заглавието, че е необходимо да се добави към заявката на една ръка разстояние, а именно:

Заглавия: = StringToVarArray ( "COOKIE: test_cookie = 123456789" # 13, # 10);

функция StringToVarArray е необходимо да конвертирате String за типа Variant. Функция код е много проста:

функция StringToVarArray (конст S: низ): Вариант;
# XA0; Var
# XA0; # XA0; и: цяло число;
започвам
# XA0; Резултати: = VarArrayCreate ([0, Дължина (S) - 1], varByte);
# XA0, защото: = 1 до дължина (S) направи
# XA0; # XA0; Резултат [I-1]: = РСР (S [Ь]);
приключи;

В крайна всичко трябва да е като шоколад, но не nifiga работи :-), или само бисквитките, но и POSTDATA.

Мисля, че тази малка статия ще бъде от интерес, може да забележите, че аз съм наред?

к.с. Тестване прекарват на локалния компютър, инсталиран Apache. readcockie.php скрипт показва съдържанието на публикацията и БИСКВИТКАТА масив.

п.п. Монтаж на бисквитки, чрез IdHTTP компонент може да се направи банална чрез удар с глава и аз мисля, че ще работи, докато аз наистина не го направи лично тест, но има позиции в интернет, че този проект работи Аз също желано решение TWebBrowser

Тук проблемът е вече обикновено се разбира, като вече го е локализиран Cookie грешка с други свойства се променят без проблеми. Такива като потребителският агент и Referer го тества лично.
Vopross как да промените Cookie?

IMHO: Доколкото разбирам от TWebBrowser-компонент като група Delphi проблеми! По дяволите, как можете да направите компонент, без да дава на потребителя възможност за предаване на бисквитки? Единственото обяснение е, че Borland като Бил обикновено нахален!

Сега, всъщност, точно в TWebBrowser-и няма начин да редактирате бисквитка маркер, който се превръща пързалка използването на компоненти на трета страна, като например IdHTTP който се справя с него добре. В резултат на натоварване на TWebBroser. Сега въпросът е, как мога да получа съдържанието на GET, POST заявка, Header. Всичко трябва да бъде обработена на BeforeNavigate, но как да се чете?

Благодаря предварително за всякакви съвети

Момчета помогнат много с последната част от проблема. След дълго страдание и MSDN прочетете я заключи, че все пак може да се контролира чрез:

(WebBrowser1.Document като IhtmlDocument2) .cookie

едно условие, бисквитката трябва да бъде предадена преди неговото редактиране старт. А именно, ако мога да откъсне URL, който определя бисквитката е тогава и само тогава тя може да се редактира (или заместител на промяна).

Но ако бисквитка се съхранява и да го редактира, за да ми поиска да възникнат проблеми. Опитът да редактирате събитие Beforenavigate завърши с неуспех, тъй като на този етап не съществува WebBrowser1.Document

Какво би WebBrowser1.Document там за първи път се опитах да отворите документ за: празен, и едва след това редактирате бисквитка, но не работи :-(

Може ли някой да посъветва, че

Памет: 0.74 MB
Време: 0,043 гр

Свързани статии

Подкрепете проекта - споделете линка, благодаря!