Comment simuler une requête http en utilisant WatiN avec un référent HTTP spécifique et une chaîne de requête?

Lorsque j’utilise WatiN pour accéder à une page Web spécifique, comment puis-je simuler le référent HTTP avec une chaîne de requête (la requête provient d’une recherche Google avec la chaîne de requête q = search_term)? Je peux donc vérifier que l’en-tête de la réponse contient la redirection 301 pour une URL de référent spécifique.

J’aurai peut-être besoin d’utiliser FiddlerCore pour agir en tant qu’intermédiaire afin de définir le référent personnalisé, mais je ne sais pas encore comment procéder.

J’utilise ASP.NET avec C #.

Merci!

//WatiN Browser.GoTo(url); 

Je devais faire quelque chose de similaire à ci-dessous:

 // 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/"); 

Il se peut que je manque le sens de ce que vous essayez de faire, mais je ne pense pas que WatiN soit capable de simuler le parrain.

WatiN gère de vrais navigateurs, il ne s’agit donc pas de simuler des choses. Si vous souhaitez qu’une page ait un référent spécifique, vous devez la relier à partir de ce référent.

Comme vous le suggérez, Fiddler convient beaucoup mieux à ce genre de chose. Si vous le souhaitez, vous pouvez modifier les demandes à la volée à l’aide de règles personnalisées afin que le référent soit celui que vous préfériez. Vous n’avez pas besoin d’utiliser Fiddlercore pour cela. Exécuter Fiddler en tant que proxy client ou sur votre serveur en tant que proxy inverse peut suffire.