WebViewジャンプアリペイ
904 ワード
Web電子商取引プロジェクトは、支付宝の支払いインタフェースで携帯電話の支付宝クライアントにジャンプすることを望んでいる.まずwebViewのエージェントに従う:
アリペイドキュメントには、ジャンプのAPIが
webView.delegate = self
エージェントメソッドを実装する: func webView(_ webView: UIWebView, shouldStartLoadWith request: URLRequest, navigationType: UIWebViewNavigationType) -> Bool {
let reqUrl = request.url?.absoluteString
if (reqUrl?.hasPrefix("alipays://"))! || (reqUrl?.hasPrefix("alipay://"))! ||
(reqUrl?.hasPrefix("http://wappaygw"))!{
//
UIApplication.shared.openURL(request.url!)
return false
}
return true
}
アリペイドキュメントには、ジャンプのAPIが
alipays://
とalipay://
と書かれていますが、ジャンプはありません.ジャンプアリペイページを印刷するときにジャンプしなければならないurlの先頭はhttp://wappaygw
で、この判断を加えてアリペイをクリックするとSafariにジャンプしてアリペイクライアントを開きます.ウェブ側が支付宝SDKバージョンにアクセスするのが古いためかもしれません.