![](/img/trans.png)
[英]POST http://localhost:3000/api/v1/register 500 (Internal Server Error)
[英]GET http://localhost:3000/api/v1/order/61e45e625d8c385a01f04a5f 500 (Internal Server Error)
OrderDetails 组件:-
import { getOrderDetails, clearErrors } from "../../actions/orderAction";
import Loader from "../layout/Loader/loader";
import { toast } from "react-toastify";
const OrderDetails = ({ match }) => {
const { order, error, loading } = useSelector((state) => state.orderDetails);
const dispatch = useDispatch();
const params = useParams()
console.log(params)
useEffect(() => {
if (error) {
console.log({ error });
toast.error(error);
dispatch(clearErrors());
}
dispatch(getOrderDetails(params.id));
}, [dispatch, error, params.id]);
return (
<Fragment>
{loading ? (
<Loader />
) : (
<Fragment>
<MetaData title="Order Details" />
<div className="orderDetailsPage">
<div className="orderDetailsContainer">
<Typography component="h1">
Order #{order && order._id}
</Typography>
</div>
</div>
</Fragment>
)}
</Fragment>
);
};
这是用户操作部分的代码:-
export const getOrderDetails = (id) => async (dispatch) => {
try {
dispatch({ type: ORDER_DETAILS_REQUEST })
const { data } = await axios.get(`/api/v1/order/${id}`)
console.log(data)
dispatch({ type: ORDER_DETAILS_SUCCESS, payload: data.order })
} catch (error) {
console.error({error})
dispatch({
type: ORDER_DETAILS_FAIL,
payload: error.response.data.message || error.message,
})
}
}
当我尝试运行代码时,这是我得到的错误:- http://localhost:3000/api/v1/order/61e45e625d8c385a01f04a5f 500(内部服务器错误)
这是 API 部分:-
路线:-
router.route("/order/:id").get(isAuthenticatedUser, authorizeRoles("admin"), getSingleOrder)
Function 被调用(getSingleOrder)
export.getSingleOrder = catchAsyncError(async (req, res, next) => { const order = await Order.findById(req.params.id).populate( "user", "name email" ) if (,order) { return next(new ErrorHander("Order not found with this id". 404)) } res.status(200):json({ success, true, order, }) })这是我在前端控制台中遇到的错误:输入图片说明在这里
这是它被移动到的路线:-在此处输入图像描述我猜这是错误。
首先,这是后端问题,而不是前端问题。
如果您的 API 没有产生数据,那么 API 就是问题所在。
因此,鉴于您提供的后端响应,很明显您尚未注册“用户”model。 当我说已注册时,我的意思是您可能没有导出 model 或在路由/控制器中错误地“要求”它。
正如@Bjorn 在评论中非常恰当地指出的那样,您可以按照这篇文章来修复和更好地理解问题 - 如何在 mongoose 中注册和调用架构
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.