我正在使用最近为 .NET 发布的新 WebView2 控件,我需要在导航到站点时向请求标头添加授权值,但我无法找到执行此操作的方法。由于这是控件相对较新并且我第一次使用它,我也可能完全错过了实际执行此操作的方法。
到目前为止,我能找到的唯一信息可以在 c++ 文档中找到:ICoreWebView2HttpRequestHeaders
它特别说
用于检查WebResourceRequested事件和 NavigationStarting 事件上的 HTTP 请求。请注意,您可以从 WebResourceRequested 事件修改HTTP 请求标头,但不能从 NavigationStarting 事件修改。
此事件在 .NET 中可用,我能够捕获它并查看请求标头,但它们似乎不可编辑,或者至少我试图错误地编辑它们。在我尝试编辑标头后,授权属性仍然为空,并且没有通过请求传递。
private void CoreWebView2_WebResourceRequested(object sender, Microsoft.Web.WebView2.Core.CoreWebView2WebResourceRequestedEventArgs e)
{
var authHeaderValue = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", "the_token_value");
e.Request.Headers.Authorization = authHeaderValue;
}
如果有办法,设置此值的正确方法是什么,因为您似乎无法直接修改 eventargs。我也很可能错误地使用了这个事件。
任何帮助表示赞赏。