【问题标题】:Custom USER-AGENT in UWP WebViewUWP WebView 中的自定义 USER-AGENT
【发布时间】:2016-04-08 23:32:08
【问题描述】:

我正在开发一个 UWP 应用,并且有一个带有 WebView 的页面。在 WebView 中,我需要将用户代理设置为自定义值。

我尝试了以下方法:

var requestMessage = new HttpRequestMessage(HttpMethod.Get, baseUri);
requestMessage.Headers.Add("User-Agent", "MyCustomValue");
webview.NavigateWithHttpRequestMessage(requestMessage);

但是,WebView 不使用我的自定义用户代理,而是使用用户代理的原始默认值。这已由 MSDN 上的this thread 确认。

对替代解决方案或变通办法的任何好的意见表示赞赏。

【问题讨论】:

标签: windows webview uwp


【解决方案1】:

似乎只支持POST,不支持GET。

也许这篇博文可以让你更接近解决方案:https://basquang.wordpress.com/2014/04/26/wp8-1-changing-windows-phone-8-1-webview-default-user-agent-in-all-outbound-http-requests/

【讨论】:

  • 良好的输入 - 但是在 WebView 上调用 NavigateWithHttpRequestMessage 会将 RequestMessage 作为 POST 发送(根据他们的文档)。我试图将 HttpMethod 更改为 POST 而不是 GET - 没有改变任何东西:/
【解决方案2】:

试试看:

var rm = new Windows.Web.Http.HttpRequestMessage(HttpMethod.Get, new Uri("https://www.whatismybrowser.com/detect/what-http-headers-is-my-browser-sending")); 
rm.Headers.Add("User-Agent", "test");
rm.Headers.Add("NSASESSIONID", "CA79AB9B-21CD-43BE-A48A-49B5F1289D22");
WebView.NavigateWithHttpRequestMessage(rm);

它对我有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-03
    • 1970-01-01
    • 1970-01-01
    • 2019-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多