首页 > 解决方案 > 在 Xamarin.Forms 应用中成功付款后如何从 WebView 获取返回 URL?

问题描述

我在我的 Xamarin Forms 应用程序中集成了一个支付网关。填写付款详细信息后,我将在 WebView 中打开付款页面以完成付款。付款完成后,它会返回一个带有付款状态代码的 URL。现在的问题是如何在我的 Xamarin Forms 应用程序中获取此返回 URL?

标签: c#xamarinxamarin.formsxamarin.androidxamarin.ios

解决方案


首先,我强烈建议您查看您正在使用的支付系统是否通过 SDK 或 API 提供某种支持,您可以使用它们来完成支付过程,而无需使用 WebView。

另一方面,如果您已经决定为此使用 WebView,则可以使用Navigating来自Xamarin.Forms WebView.

Navigating是在导航开始时引发的事件。

在 C# 中使用它:

yourWebView.Navigating += YourWebView_Navigating;

或在 XAML 中:

<WebView Navigating="YourWebView_Navigating" 
...

并且在您的代码隐藏中,您可以访问WebNavigatingEventArgs它:

void YourWebView_Navigating(object sender, WebNavigatingEventArgs e)
{
    if (e.Url // check the value of it
    // other code logic.

使用它,您将可以访问WebNavigatingEventArgs包含名为 的属性Url,使用该信息您可以检查 URL 值并将其与应用程序中的其他逻辑相结合,将用户导航离开或在成功付款后执行任何您打算执行的操作。

希望这对您有所帮助,祝您编码好运!


推荐阅读