在這里,我想在 API 上創建一個 post 方法,但是當我呼叫該函式時,它會發布到錯誤的 API 路徑
這是我的帖子腳本
//Creating Order
const createOrder = async (data) => {
try {
const res = await axios.post(
`${process.env.API_ROOT}/api/orders` ||
`${process.env.LOCAL_URL}/api/orders`,
data
);
if (res.status === 201) {
router.push(`/api/orders/${res.data._id}`);
dispatch(reset());
}
} catch (err) {
console.log(err);
}
};
當我從 Paypal 批準并使用訂單按鈕時??,我呼叫了該函式,但是當我按下按鈕時,URL API 路徑更改為某些內容${process.env.API_ROOT}/undefined/api/orders 或${process.env.LOCAL_URL}/undefined/api/orders導致此問題的原因是什么?

但是當我使用類似它的東西時
//Creating Order
const createOrder = async (data) => {
try {
const res = await axios.post(`/api/orders`,data); <===== its working
if (res.status === 201) {
router.push(`/api/orders/${res.data._id}`);
dispatch(reset());
}
} catch (err) {
console.log(err);
}
};
uj5u.com熱心網友回復:
那是代碼的前端部分,您process.env.API_ROOT決議為未定義。但是有一種方法可以process.env在前端代碼中使用變數,您只需要在它們前面加上NEXT_PUBLIC這樣的前綴:
process.env.NEXT_PUBLIC_LOCAL_URL
process.env.NEXT_PUBLIC_API_ROOT
官方檔案中的更多資訊
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/463741.html
標籤:javascript 反应 api 下一个.js
上一篇:如果其他鍵值對匹配,則合并子陣列
