如何修复加载 PayPal SDK JS 时出现的 400 错误

问题描述 投票:0回答:2

我正在尝试与 PayPal 集成,但无法加载 sdk/js。

我从字面上将其削减回他们的示例代码,但在加载 SDK js 时仍然给出 HTTP 错误 400。 按照此处给出的步骤... https://developer.paypal.com/docs/subscriptions/integrate/#4-create-a-subscription

<!DOCTYPE html>

<head>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
</head>

<body>
<script
        src="https://www.paypal.com/sdk/js?client-id=AeRCvNJjX_wuV8I8KnIxllYZhizA7I3JZBzQJk4O2q8DoC1ORE9GZM1S1wJd2ch7XZWfsG3GHAYIUWhc&vault=true">
</script>

<div id="paypal-button-container"></div>

<script>
    paypal.Buttons({
        createSubscription: function(data, actions) {
            return actions.subscription.create({
                'plan_id': 'P-3S4679857D7841235LUOV5VY'
            });
        },

        onApprove: function(data, actions) {
            alert('You have successfully created subscription ' + data.subscriptionID);
        }
    }).render('#paypal-button-container');
</script>
</body>
</html>

SDK js 未加载。查看响应,我可以在 sdk/js 请求上看到 HTTP 错误 400,以及 paypal-debug-id 值。

我已经检查并重新检查我传递的客户端 ID 是否正确。

FWIW:我注意到在他们的一些其他按钮示例中,您可以使用“sb”代替您的客户端 ID。如果我只使用 client-id=sb,它会显示一个付款按钮,但如果我包含“&value=true”或使用我的实际 client-id,它会返回错误 404。

paypal paypal-subscriptions
2个回答
3
投票

在这个问题上我苦苦思索几个小时后,我终于在 PayPal 论坛中偶然发现了答案。事实证明是 cookie 的某种问题。清除所有与 PayPal 相关的 cookie 似乎已经解决了问题。

将这个问题留在这里,以防它帮助其他人避免它给我带来的头痛!


0
投票

我遇到了同样的错误。

就我而言,我不小心点击了一个链接,它打开并说:

抛出新错误(“SDK验证错误:'生产环境中不允许查询参数买方国家'”);

这浪费了我一个小时的时间,真是太搞笑了。希望错误可能出现在“网络”选项卡中。事实并非如此。我只是偶然发现的。

© www.soinside.com 2019 - 2024. All rights reserved.