我一直致力于在我的 VPS 网站 www.oddco.ca 上设置支付网关。当我在我的机器本地终端中运行“npm start”并转到 localhost:8888 端口时,paypal 网关在沙箱环境中正常工作,但是当我实际单击我网站上的 paypal 按钮以打开相同的弹出窗口时,我得到:
“无法启动 PayPal Checkout...
语法错误:意外的标记'<', "
我已经设置了 .env、server.js、app.js、checkout.html、package.json,但似乎找不到关于为什么 PayPal 弹出窗口无法加载的错误。它总是会出现一瞬间,甚至显示 PayPal 徽标,这意味着它显然正在尝试连接,但随后就会消失。任何帮助将不胜感激。
我不知道该尝试什么或从哪里开始解决这个问题,因为这是我第一次在 VPS 上构建。
localhost:8888 是 PayPal 的 node.js 示例应用程序的后端部分,当然,如果在本地运行的话。
您需要在服务器上部署节点应用程序,或者(如果站点的其余部分使用 PHP,则更有可能)使用 PHP 重新实现示例的整个后端部分,并将其部署到您的站点。
当前端 JS 中的
fetch
路由到您的站点时,它们必须收到包含预期数据的有效 JSON 格式响应。它必须只是一个 JSON 字符串,不能有其他 HTML 或文本。关于“<" is because your site is responding with HTML (likely some 404 error page) and so the frontend cannot proceed because the backend is not giving it a PayPal Order ID to initiate the checkout with.”的错误