'win.location'(在Chrome
正常工作的iPhone
)PayPal燈箱不會在iPhone safari/web應用程序中打開;未定義
我得到這個錯誤:
TypeError: 'undefined' is not an object (evaluating 'win.location') in dg.js line 3
和燈箱不會打開。
PayPal的dg.js內有問題的代碼是:
startFlow: function (url) {
var win = that._render();
if (win.location) {
win.location = url;
} else {
win.src = url;
}
}
因此,沒有移動Safari
不懂that._render()
?我如何解決這個問題?
如果它的事項,我使用Adaptive Payments
,調用它像這樣:
var dg = new PAYPAL.apps.DGFlow({
trigger: null,
expType: 'light'
});
dg.startFlow('https://www.paypal.com/webapps/adaptivepayment/flow/pay?expType=light&payKey=' +data.paykey);
我沒有任何問題,讓臺式機和除Safari
其他移動瀏覽器的payKey
&整個payflow
作品(它在桌面上工作Safari
)。當我們的網站作爲iOS
網絡應用運行時,它也不起作用,我認爲它只是Safari
的殼。
我沒有與任何燈箱運氣(我試過莊重)。我最終不得不集成適用於iOS的迷你流程,該流程雖然具有新的瀏覽器窗口,但仍能正常工作。 – Alex
@Alex我也面臨類似的問題。我的應用是一個IOS應用。我所做的是創建paykey並使用迷你瀏覽器URL加載UIWebView。但是我無法檢測到用戶完成付款或取消付款。返回並取消網址不被稱爲?你是如何在IOS中實現迷你流的?請幫幫我。 – arundevma
我實際上正在將這種整合從我的系統中剝離出來。根據我從PayPal支持獲得的信息,此流程在WebView內部不受支持,而PayPal無法解決此問題,因爲它們已經有效地停止了Classic API上的開發。有一種解決方法可以刪除JavaScript,只是直接重定向到PayPal,將payKey作爲查詢參數傳遞,但用戶體驗很糟糕(至少不是移動優化)。 – Alex