2010-12-06 7 views
0

WatiNを使用して特定のWebページにアクセスする場合、はクエリ文字列でHTTPリファラーを偽装するにはどうすればよいですか(クエリ文字列q = search_termを使用したGoogle検索によるリクエスト)そこで、レスポンスヘッダーに特定の参照元URLの301リダイレクトがあることを確認できます。特定のHTTPリファラーとクエリ文字列を使用してWatiNを使用してHTTPリクエストをシミュレートする方法はありますか?

カスタムリファラーを設定するために中間の人のように行動するには、FiddlerCoreを使用する必要があるかもしれませんが、私はその方法をまだ分かりません。

私はC#でASP.NETを使用しています。

ありがとうございます!

//WatiN 
Browser.GoTo(url); 

答えて

1

私は以下のようなものを行うために必要:

// session is a custom version of FiddlerCore.Fiddler 
// details about BeforeRequest -> http://fiddler.wikidot.com/fiddlercore-demo 
session.BeforeRequest += sess => 
    sess.oRequest 
     .headers 
     .Add(
      "Referer", 
      "http://www.i-am-middle-man.com/q=black" 
     ); 

session.BeforeResponse += sess => 
     { 
      //sess.oResponse.headers.HTTPResponseCode 
      //sess.oResponse.headers["Host"] 
     }; 

var handler = WatiNHandler(BrowserTypes.IE); 
handler.GoTo("http://www.my-url.com/"); 
0

は、私はあなたが何をしようとしてのポイントを逃しかもしれないが、私はWatiNはfakingbtheリファラすることはないと思います。

WatiNは実際のブラウザを駆動するので、偽造の仕事にはなりません。ページに特定の参照元があるようにするには、その参照元からリンクさせる必要があります。

あなたが示唆するように、Fiddlerはこの種のものにはるかに適しています。必要に応じて、カスタムルールを使用してオンザフライでリクエストを変更して、参照元が好きなものにすることができます。このためにFiddlercoreを使用する必要はありません。 Fiddlerをクライアントプロキシとして実行するか、サーバー上でリバースプロキシとして実行するだけで十分です。

関連する問題