Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > Referrer в WebBrowser


Автор: ProgramerForever 29.3.2008, 19:45
Добрый вечер! Скажите, пожалуйста, как мне имитировать переход с какой-то определённой страницы (т.е. подменять поле referrer в броузере)?

Автор: ProgramerForever 8.5.2008, 21:48
На сайте Королевство Дельфи нашёл пример:
Код

  Dummy:=NULL;
  Headers:='Referrer: http://test.com'#13#10;
  WebBrowser.Navigate('http://test.com/tst.htm',Dummy,Dummy,Dummy,Headers);

Пробовал - не работает. Страничка определяет как закладки или не определяет вовсе, откуда был переход.

Автор: Akina 8.5.2008, 23:08
Цитата

The WebBrowser control fires a number of different events to notify an application of user—and browser—generated activity. When the browser is about to navigate to a new location, it triggers a BeforeNavigate2 event that specifies the URL or path of the new location and any other data that will be transmitted to the Internet server through the http transaction. The data can include the http header, http post data, and the URL of the referrer. The BeforeNavigate2 event also includes a flag that can be set to cancel the pending navigation request. This event can be useful for checking the requested URL against a database of unauthorized World Wide Web sites or local and network folders, and for canceling the navigation request. The WebBrowser control fires the NavigateComplete2 event after it has navigated to a new location. This event includes the same information as BeforeNavigate2, except NavigateComplete2 does not include the cancel flag. 


Код

Private Sub WebBrowser_BeforeNavigate2(ByVal URL As String, _
                                       ByVal Flags As Long, _
                                       ByVal TargetFrameName As String, _
                                       PostData As Variant, _
                                       ByVal Headers As String, _
                                       Cancel As Boolean)

Автор: ProgramerForever 14.9.2008, 10:56
Подскажите, где можно потестировать код, нужен какой-нибудь сайт, отбражающий заголовки..

Добавлено через 9 минут и 49 секунд
Пробую такой код:
Код

    URL = "http://infrared.ucoz.ru"
    Flags = 0
    TargetFrame = ""
    PostData = ""
    PostData = StrConv(PostData, vbFromUnicode)
    Headers = "Content-Type: text/html" & vbCrLf & "Referrer: http://www.microsoft.com/ru/ru/default.aspx" & vbCrLf
    
    WB.Navigate2 URL, Flags, TargetFrame, PostData, Headers

Определяет как будто я открыл с Закладок, т.е. то-то не так..

Автор: ProgramerForever 16.10.2008, 19:28
Попробовал такой код на Денвере:
Код

<?php echo '='.$_SESSION['referrer'].'='?>

Выдаёт
Код

Notice: Undefined variable: _SESSION in l:\home\www.ref.ru\www\index.php on line 1
==


Автор: Akina 16.10.2008, 20:39
Цитата(ProgramerForever @  14.9.2008,  11:56 Найти цитируемый пост)
нужен какой-нибудь сайт, отбражающий заголовки

Зачем сайт? поставьте себе ieHttpHeaders и смотрите заголовки прямо в браузере.

Автор: ProgramerForever 16.10.2008, 20:44
Делаю так:
Код

URL = "http://www.ref.ru/"
    Flags = 0
    TargetFrame = ""
    PostData = ""
    PostData = StrConv(PostData, vbFromUnicode)
    Headers = "Content-Type: text/html" & vbCrLf & _
    "connection:keep-alive" & vbCrLf & _
    "Referer: http://infrared.ucoz.ru/" & vbCrLf & _
    "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)"
    
    WB.Navigate2 URL, Flags, TargetFrame, PostData, Headers



На сайт
Код

<?php echo '='.$_SESSION['referrer'].'='?>

В чём ошибка?

Автор: Akina 16.10.2008, 20:54
Задайте этот вопрос в форуме по РНР, скопировав туда 2 своих последних постинга. А еще лучше - сначала хотя бы почитайте что-нибудь про глобальные и сессионные переменные и настройку сервера. Чтобы понимать, за что вас будут ругать.

Автор: ProgramerForever 16.10.2008, 21:15
Мне надо всего лишь сделать, чтобы если я смотрел сайты через мою программу, то сайты думали, что я пришёл с сайта, который я выбираю сам. (например, с microsoft.com )) )

Автор: DeMONiZ 2.1.2009, 21:54
кстати да ProgramerForever ты разобрался как передавать рефера меня этот вопрос тоже очень интересует!??

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)