如何在Xamarin.Forms应用中支付成功后从WebView中获取returnURL?
How to get return URL from WebView after successful payment in Xamarin.Forms app?
我在我的 Xamarin Forms 应用程序中集成了一个支付网关。填写付款详细信息后,我在 WebView 中打开付款页面以完成付款。付款完成后,它 return 发送一个带有付款状态代码的 URL。现在的问题是如何在我的 Xamarin Forms 应用程序中获得这个 return URL?
首先,我强烈建议您查看您正在使用的支付系统是否通过 SDK 或 API 提供某种支持,您可以使用它来完成支付流程,不使用WebView。
另一方面,如果您已经决定为此使用 WebView,则可以使用来自 Xamarin.Forms
WebView
.
的 Navigating
事件
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 值并将其与其他值组合在您的应用程序中添加逻辑,让用户离开或您在成功付款后打算做的任何事情。
希望这对您有所帮助,祝您编码顺利!
我在我的 Xamarin Forms 应用程序中集成了一个支付网关。填写付款详细信息后,我在 WebView 中打开付款页面以完成付款。付款完成后,它 return 发送一个带有付款状态代码的 URL。现在的问题是如何在我的 Xamarin Forms 应用程序中获得这个 return URL?
首先,我强烈建议您查看您正在使用的支付系统是否通过 SDK 或 API 提供某种支持,您可以使用它来完成支付流程,不使用WebView。
另一方面,如果您已经决定为此使用 WebView,则可以使用来自 Xamarin.Forms
WebView
.
Navigating
事件
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 值并将其与其他值组合在您的应用程序中添加逻辑,让用户离开或您在成功付款后打算做的任何事情。
希望这对您有所帮助,祝您编码顺利!