Я использую Webview
в приложении Xamarin Forms. Я устанавливаю специфику c готовить ie, как мы видим в приведенном ниже коде.
Проблема: Webview
открывается правильно и страница загружается, но Веб-сайт содержит кнопку «Далее», которая приведет нас на другую веб-страницу. Всякий раз, когда я нажимаю «Далее», я сразу получаю Тайм-аут сеанса . Это похоже на то, что Webview не спасет ie повара, когда я буду перемещаться внутри него.
WebScreen.xaml:
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:d="http://xamarin.com/schemas/2014/forms/design"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
x:Class="EPayment.Views.DetailViews.WebScreen">
<ContentPage.Content>
<StackLayout>
<WebView x:Name="paymentWebView" VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand"
Navigated="paymentWebView_Navigated" Navigating="paymentWebView_Navigating"/>
</StackLayout>
</ContentPage.Content>
WebScreen. xaml.cs:
[XamlCompilation(XamlCompilationOptions.Compile)]
public partial class WebScreen : ContentPage
{
public WebScreen(HtmlWebViewSource webSource)
{
InitializeComponent();
paymentWebView.Source = webSource;
}
private void paymentWebView_Navigated(object sender, WebNavigatedEventArgs e) { }
private void paymentWebView_Navigating(object sender, WebNavigatingEventArgs e) { }
}
Вот как я запускаю класс WebScreen
:
var httpDate = DateTime.Now.ToString("r");
var cookieValue = httpDate;
var encodedCookie = HttpUtility.UrlEncode(cookieValue);
cookieContainer.Add(baseAddress, new Cookie("cookie", encodedCookie));
var result = await client.PostAsync("/pay", content);
if (result.IsSuccessStatusCode)
{
var resp = await result.Content.ReadAsStringAsync();
var html = new HtmlWebViewSource
{
Html = resp,
BaseUrl = "https://testsecureacceptance.cybersource.com"
};
await Navigation.PushAsync(new WebScreen(html));
}
Кто-нибудь знает, какое решение для такого рода проблем? Есть ли способ сохранить файлы cookie или вариант или что-то в этом роде?