问题描述
我正在使用 Braintree 作为支付网关,当我使用他们给定的信用卡进行测试时,支付功能工作正常,但付款后,当后端提取代码被命中时,它应该创建一个订单,但它不起作用. 我正在使用此代码来获取后端功能,
import { API } from "../../backend";
export const createOrder = (userId,token,orderData) => {
return fetch(`${API}/order/create/${userId}`,{ //getting error at this line
method: "POST",headers: {
Accept: "application/json","Content-Type": "application/json",Authorization: `Bearer ${token}`
},body: JSON.stringify({order: orderData})
}).then(response => {
return response.json();
}).catch(err => {
console.log(err);
})
};
后端代码是,
router.param("userId",getUserById);
router.post(
"/order/create/:userId",isSignedIn,isAuthenticated,pushOrderInPurchaseList,updateStock,CreateOrder
);
我收到错误“请求错误”。相同的获取请求在其他地方工作,例如创建产品和类别,API 在那里工作正常,但在这里不行。
解决方法
400 BAD REQUEST 的某些原因
URL 字符串语法错误。 HTTP 错误 400 可能是由于 URL 输入错误、语法格式错误或 URL 包含非法字符而发生的