我找不到如何将标头设置挂钩到BrowsingContext
实例的请求中。
如果没有其他人发现如何AngleSharp
仅使用,这应该是首选解决方案,一种解决方法是自己手动发出 http 请求,使用框架的HttpClient
,因此您可以根据需要使用请求标头,并且然后提取响应的文本并将其传递给AngleSharp
's HtmlParser
,这是我通常做的事情。
例子:
HttpClient hc = new HttpClient();
hc.DefaultRequestHeaders.TryAddWithoutValidation("headerSetting", "headerValue");
var response = await hc.GetAsync("yourUrl");
var html = await response.Content.ReadAsStringAsync();
//from here on you are under AngleSharp's jurisdiction...
var parser = new HtmlParser();
IHtmlDocument parsedDoc = parser.Parse(html);
如果您不确定headers
在您的代码中可能遗漏了哪些内容http request
,我通常会做一件事来分析发布请求并确保我没有遗漏任何headers
内容,即在 的实例Fiddler
运行时在浏览器中执行操作,所以我可以剖析它。
例如,假设您有一个像
使用提琴手,我可以看到发送到服务器的所有内容(包括 cookie)
而且headers
,这就是你所追求的。在这里,您将能够了解header
通过浏览器发送的执行操作的所有设置,因此您可以在您的代码中模仿它http request
(您拥有request
和的所有数据response
)。