【问题标题】:.NET MAUI 7 Android WebViewClient OnReceivedHttpAuthRequest override is never called.NET MAUI 7 Android WebViewClient OnReceivedHttpAuthRequest 覆盖从未被调用
【发布时间】:2023-01-18 16:37:58
【问题描述】:

在我的 .NET MAUI 应用程序中,我实现了一个带有 url 的 WebView。当导航到该网站时,会出现一个简单的 js 弹出登录。现在在我的应用程序中,我想以编程方式设置凭据。

我试图通过覆盖 OnReceivedHttpAuthRequest 方法并将用户名和密码传递给处理程序来处理网页上的 js 登录请求。继续但从未调用该方法。

我的课:

public class BasicAuthWebViewClient : WebViewClient
{
    private readonly string Username;
    private readonly string Password;

    public BasicAuthWebViewClient(string username, string password)
    {
        Username = username;
        Password = password;
    }

    public override void OnReceivedHttpAuthRequest(Android.Webkit.WebView view, HttpAuthHandler handler, string host, string realm)
    {
        handler.Proceed(Username, Password);
    }
}

和构造函数:

androidWebView.SetWebViewClient(new BasicAuthWebViewClient(settings.Credentials.Username, settings.Credentials.Password)); 

【问题讨论】:

  • 您能否包括覆盖基础的方法的代码(至少是签名)?
  • 请提供足够的代码,以便其他人可以更好地理解或重现问题。

标签: c# maui .net-7.0


【解决方案1】:

现在我解决了将用户名和密码传递给 url 的问题,如下所示:

https://username:password@mywebsite.com/

【讨论】:

    猜你喜欢
    • 2022-11-03
    • 2013-12-22
    • 1970-01-01
    • 1970-01-01
    • 2022-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多