![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Скрыть HTTP_REFERRER
Publ © (2008-11-10 07:38:00)Буду краток: работаю с Embedded WebBrowser, появилась необходимость избавиться от заголовка HTTP_REFERRER, который передаётся компонентом на сервер
Вот такая вещь работает без проблем:
procedure TForm1.Button1Click(Sender: TObject);
var Url, Flags, Headers, TargetFrameName, PostData: OLEVariant;
Ref: string;
begin
Ref:=' http://www.google.com/'; //или Ref:='';
Flags:='';
TargetFrameName:= '';
PostData := '';
Url:=' http://example.com/ip.php';
Headers:=Headers+'Referer: '+Ref+#10+#13;
EmbeddedWB1.Navigate2(Url, Flags, TargetFrameName, PostData, Headers);
end;
Но этот код только открывает одну страницу, с которой ожно перейти на другую, а там уже снова HTTP_REFERRER будет передаваться
Тогда пришла мысль что тут надо будет поработать с BeforeNavigate2. И начались проблемы:
procedure TForm1.EmbeddedWB1BeforeNavigate2(ASender: TObject;
const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
Headers: OleVariant; var Cancel: WordBool);
begin
Headers:=''; // Пробую почистить всё сразу
end;
НЕ РАБОТАЕТ :( Как будто этого там вообще участка кода нет.
Где-то увидел, что нало в beforenavigate2 ещё и navigate делать, вот так примерно
Head:='Referer: '+#10#13;
EmbeddedWB1.Navigate(URL, Flags, TargetFrameName, PostData, Head); // И Navigate2 - тоже ничего не даёт
Только от этого ещё и глюки пошли страшные - зацикливание, ошибки
Уважаемые мастера, помогите, пожалуйста, поясните, почему очистка заголовков в BeforeNavigate2 не помогает, как будто я её и не делаю? Или я что-то важное упустил, тогда подскажите что. Кровь из носу надо от referrer избавиться, а я разобраться не могу :(((
Publ (2008-11-13 05:35:00) [1]Ну неужели никто с BeforeNavigate2 не работал и ничем помочь не может? Не верю...
Натолкните на путь истинный! :) Please