2017-08-16 85 views
1

我们有一个应用程序,需要用户进行付款。我们有第三方提供商处理付款。在我们的网站上,当用户付款时,他们会被转到第三方网站上的付款门户网站,付款后会被重定向回我们的网站。打开网站从应用程序和重定向返回

我的任务是在我们的iOS Swift 3应用程序中实现相同的功能。我对我想做什么有了一个概念,但我不太确定如何去做。我开始时认为我可以通过POST请求(我现在知道我不能)打开用户的浏览器,然后使用Universal Linking,一旦付款完成,就可以通过应用程序获取重定向。

因此,因为我无法在用户的浏览器上执行POST请求,所以我想我会在我的应用程序中实现UIWebView。基本上我有代码来做到这一点。我的问题是。我如何捕获UiWebView的重定向?据我所知,在成功付款后,UIWebView将保持活跃状态​​,页面将重定向,从而在我们的应用程序中显示我们的网站。这不是我想要的。

任何人都可以解释一个更好的方式来做到这一点?无需代码,但将不胜感激。

回答

2

是的,它的可能性和许多应用程序都是这样做的。 有很多方法可以做,但我在做什么,我可以分享。 我是在webview中打开付款页面并在付款页面成功后。该页面使用SuccessURL重定向到Success页面。当SuccessURL/FailedURL(预定义)开始加载时,我将用户带回原生应用程序。

func webView(webView: UIWebView, shouldStartLoadWithRequest request: NSURLRequest, navigationType: UIWebViewNavigationType) -> Bool {  
    if request.url == "sucessURL" { 
    //do whatever you want 
    return false 
    } 
    if request.url == "failedURL" { 
    ////do whatever you want 
    return false 
    } 
    else { 
    return true 
    } 

}

+0

辉煌!谢了哥们! –

相关问题