我一直致力于在我的VPS网站www.oddco.ca上设置支付网关。当我在我的机器上本地终端中运行“npm start”并转到localhost:8888端口时,贝宝网关在沙箱环境中正常工作,但当我实际点击我的网站上的贝宝按钮以打开相同的弹出窗口时,我得到:
“无法启动PayPal结账.
语法错误:意外的标记'<$',“
我有.env,server.js,app.js,checkout.html,package.json都设置好了,但似乎找不到为什么PayPal弹出窗口不会加载的错误。它总是出现一瞬间,甚至显示PayPal徽标,这意味着它显然是在尝试连接,但随后消失。任何帮助都将不胜感激。
我不知道该尝试什么,或者从哪里开始来解决这个问题,因为这是我第一次在VPS上构建。
1条答案
按热度按时间6qqygrtg1#
localhost:8888是PayPal的node.js示例应用程序的后端部分,当然如果在本地运行的话。
您需要在服务器上部署node应用程序,或者(如果站点的其余部分都是PHP,则更有可能)用PHP重新实现示例的整个后端部分,并将其部署到站点。
当
fetch
在前端JS post中路由到您的站点时,它们必须收到一个有效的JSON格式的响应,其中包含预期的数据。它必须是一个JSON字符串,没有额外的HTML或文本。关于“<”的错误是因为您的网站正在使用HTML响应(可能是一些404错误页面),因此前端无法继续,因为后端没有给它一个PayPal订单ID来启动结账。