Javascript 奇怪的PayPal Express结账问题只会影响使用Facebook应用程序浏览器的iPhone/iPad用户

Javascript 奇怪的PayPal Express结账问题只会影响使用Facebook应用程序浏览器的iPhone/iPad用户,javascript,ios,iphone,facebook,paypal,Javascript,Ios,Iphone,Facebook,Paypal,我有一个非常奇怪的问题,贝宝快速结帐,这只是一个问题,在某些情况下,否则它的工作非常好 基本上,如果用户试图通过Facebooks in app browser从我们的商店购买苹果移动设备(ipad或iphone),并尝试使用Paypal支付(其他支付选项可用),他们将得到一个空白的白色屏幕,如果他们按下浏览器中的“上一步”按钮,他们将返回产品详细信息页面,他们没有按篮子页,而是按了按钮 不幸的是,我们的分析显示,整个网站(不仅包括商店)的每月访客中至少有75%使用iPhone或iPad,其中可

我有一个非常奇怪的问题,贝宝快速结帐,这只是一个问题,在某些情况下,否则它的工作非常好

基本上,如果用户试图通过Facebooks in app browser从我们的商店购买苹果移动设备(ipad或iphone),并尝试使用Paypal支付(其他支付选项可用),他们将得到一个空白的白色屏幕,如果他们按下浏览器中的“上一步”按钮,他们将返回产品详细信息页面,他们没有按篮子页,而是按了按钮

不幸的是,我们的分析显示,整个网站(不仅包括商店)的每月访客中至少有75%使用iPhone或iPad,其中可能至少有50%-60%来自Facebook

商店是定制的,我已经设置了很多日志来跟踪Paypal API调用,API调用都成功运行,没有错误,我的日志显示Paypal登录框应该出现在lightbox窗口中,但它没有,当用户在ipad/iphone上通过Facebook浏览器点击黄色的“Paypal支付”按钮时,它似乎打开了一个新标签,但这只是一个空白页面,如果我去分享URL,它几乎是:空白

然而,如果用户使用Safari应用程序购买一切都是正常的,在Android设备、Windows电脑和苹果电脑上一切都是正常的

我花了一个周末的时间试图解决这个问题,我们甚至出去买了一台旧的二手iPhone只是为了测试,而不是依赖朋友,但我找不到任何其他人有同样的问题,或者任何方法来解决它,正如我在开始时所说的,它对所有人都很好,除了苹果和使用Facebook浏览器的人

下面是设置Paypal支付的Javascript代码,几乎所有这些代码都来自Paypal自己的文档中的示例,并且在90%的情况下都有效

paypal.Button.render({

    env: 'production', 
    commit: true,

    payment: function (resolve, reject) {

        var CREATE_PAYMENT_URL = 'genPaypal.php';

        paypal.request.post(CREATE_PAYMENT_URL) 
            .then(function (data) {
                resolve(data.id);
            })
            .catch(function (err) {
                reject(err);
            });            
    },

    onAuthorize: function (data) {
        // code here is executed when the user logs in to paypal and authorizes the purchase.
    }

}, '#paypal-button');
paypal.request.post(CREATE\u PAYMENT\u URL)
行向生成API调用的PHP文件发送一个请求,如前所述,日志显示该请求按预期运行

通话结束后,lightbox窗口中的PayPal登录框会显示用户,但只会加载一个空白页面


正如我所说,如果满足某些条件,这只是一个问题,但它正在失去我们的业务,我们的日志显示,由于这个问题,我们很容易在几周内就损失了100-200英镑的销售额。

感谢您提供的非常详细的报告!我们意识到了这个问题——这与在应用程序内的web视图中打开弹出窗口是不可能的这一事实有关

我们有一个问题需要跟踪:--我希望在本周的某个时候解决这个问题

对于未来的问题,请随时在上提出github问题——我们更有可能在那里看到它们


再次感谢

谢谢@bluepnume,我从来没有想过要看Github,我不知道这是Paypal的问题,Facebook的问题,还是我自己制造的问题!我将密切关注Github上的问题跟踪程序,同时禁用通过Facebook浏览器进入的用户的Paypal checkout,直到应用修复程序。谢谢:)你现在能试试这个吗?这个问题应该得到解决。如果您看到任何进一步的问题,我很高兴知道。谢谢嗨,bluepnume,我在Github上关注这个问题,当我看到它被标记为已修复并已部署时,我立即在商店的本地开发版本上测试了它,并且非常高兴地看到lightbox窗口在iPhone上直接通过Facebook打开。我们在iOS上通过Facebook浏览器再次启用了paypal结账功能,我们看到很多人结账很好,感谢您快速解决了这个问题:)嗨,bluepnume,我不想挖掘这个旧线程,但我在这里找不到给您发消息的方法。不管怎么说,自从你解决了上述问题,通过FB在苹果设备上的用户的情况已经好了很多,但奇怪的是,盒子没有出现,唯一的共同因素是苹果设备,无论是iPhone还是iPad,使用FB浏览器,每次API都会向用户提供登录框,但它没有出现。有时它可以第二次使用,有些则不行,但很多用户第一次也可以很好地使用。真奇怪!嘿@JamiePeters——通常最好在会议上提出问题。本周我会花一些时间检查ios上的FB浏览器,看看是否可以重新处理这些问题。谢谢你让我知道!