我在后端使用 Woocommerce,在前端使用 React js。由于 api 支持 woocommerce,我正在尝试将 PayPal 集成到支付网关中。使用 woocommerce 的默认 WordPress 主题正在按照以下流程进行付款。
- 当“使用 PayPal 支付”按钮被点击时,下的订单处于待处理状态
- 使用订单 ID 和购物车金额将用户重定向到 PayPal 支付网站
- 当用户完成付款后,用户将被重定向到下订单页面。
- 之前下的订单状态会更新为来自 Paypal 的适当响应,如正在处理或已取消
我的问题是如何使用 REST API 实现此过程。
使用客户端集成还是服务器端集成最好? 如果使用客户端集成,会不会有漏洞?我如何确认用户支付了购物车的值(value)?
最佳答案
两者都是Woocommerce和 PayPal有自己的api资源。
使用他们的 API 文档我们可以实现 restful可以与 woocommerce 通信的 API 实现用于订单/商店管理以及用于支付管理的 paypal
API 请求将始终从客户端发起,因此我们可以从客户端开始实现,但最主要的是端点实际上不应指向任何一个paypal。或 wooocommerce真实endpoints ,相反,我们应该使用我们自己的 endpoints 在服务器端实现与 API 相关的工作.例如,在 woocommerce 中创建订单实际endpoint是
curl -X POST https://<store_domain>/wp-json/wc/v3/orders \
-u consumer_key:consumer_secret \
-H "Content-Type: application/json" \
-d '{payload}'
我们不应该直接使用它,我们可以这样做,
https://api.<store_domain>.com/create_order/
与一些 header authentication然后是服务器,
api.<store_domain>.com
应该调用实际woocommerce商店,
https://<store_domain>/wp-json/wc/v3/orders
端点也以相同的方式用于 PayPal 请求,以便在两个 woocommerce 中都用于 API 资源的有效负载和 paypal最终用户将不可见。
以类似的方式,来自 paypal 的响应应该被重定向到
api.<store_domain>.com
验证交易是否成功后,使用api response我们可以在react js中处理,这样可以保证安全!有关处理来自 endcustomer 的响应的更多信息请引用URL .
关于php - Woocommerce Paypal REST api 与 React JS 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63742395/