将外部URL加载到WebView中

时间:2016-05-24 04:22:33

标签: xamarin xamarin.android android-webview

Laoding外部URL具有带有用户名和密码的DialogBox到WebView。它给我错误需要授权

网址" http://developer.xamarin.com:8081/api/todoitems"

enter image description here 我加载了很多网址,但没有收到这样的错误。但是如上所述加载带有Dialogbox的URL用于登录它会给我带来错误。

请帮助我在WebView中显示这样的网址。

2 个答案:

答案 0 :(得分:1)

您需要提供该页面所需的凭据:

myWebview.SetHttpAuthUsernamePassword(host, realm, username, password);

Xamarin Reference

答案 1 :(得分:1)

您可以创建Native WebView Renderer。 将WebViewClient添加到此webview渲染器:

webView.SetWebViewClient(new MyWebViewClient ());

使用覆盖OnReceivedHttpAuthRequest创建MyWebViewClient,如下所示:

class MyWebViewClient : WebViewClient
{
    public override void OnReceivedHttpAuthRequest(Android.Webkit.WebView view, HttpAuthHandler handler, string host, string realm)
    {
        Dialog dialog = new Dialog(view.Context);

        dialog.SetContentView(/*Layout here*/);
        dialog.Show();

        //On submit Button Click from Layout set username and password:
        handler.Proceed(userName, password);
    }
}

对话框是android项目中的布局,包含用户名,密码,提交和取消字段。您可以自行创建或从some pages获取帮助。