【问题标题】:whenever i am trying to post this error is showing "Failed to load resource: the server responded with a status of 500 (Internal Server Error) "每当我尝试发布此错误时,都会显示“加载资源失败:服务器响应状态为 500(内部服务器错误)”
【发布时间】:2022-08-18 17:49:19
【问题描述】:

我不确定为什么会收到此错误。每当我尝试在我的电子商务项目网站上下订单时。我收到这个错误。

:5000/api/order:1 
 Failed to load resource: the server responded with a status of 500 (Internal Server Error)

 code: \"ERR_BAD_RESPONSE\"
    config: {transitional: {…}, transformRequest: Array(1), transformResponse: Array(1), timeout: 0, adapter: ƒ, …}
    message: \"Request failed with status code 500\"
    name: \"AxiosError\"
    request: XMLHttpRequest {onreadystatechange: null, readyState: 4, timeout: 0, withCredentials: false, upload: XMLHttpRequestUpload, …}
    response:
    config: {transitional: {…}, transformRequest: Array(1), transformResponse: Array(1), timeout: 0, adapter: ƒ, …}
    data: {index: 0, code: 11000, keyPattern: {…}, keyValue: {…}}
    headers: {content-length: \'123\', content-type: \'application/json; charset=utf-8\'}
    request: XMLHttpRequest {onreadystatechange: null, readyState: 4, timeout: 0, withCredentials: false, upload: XMLHttpRequestUpload, …}
    status: 500
    statusText: \"Internal Server Error\"
    [[Prototype]]: Object
    [[Prototype]]: Error

这是我的 useEffect 请求。

 useEffect(() => {
        const createOrder = async () => {
            try {
                const res = await userRequest.post(\'/order\', {
                    username: currentUser.username,
                    products: cart?.products.map((item) => ({
                        productId: item._id,
                        quantity: item._quantity,
                    })),
                    amount: cart?.total,
                    address: \"India\",
                    pincode: \"110046\",
                    phone: \"1234567890\",
                    email: \"johndoe@xyz.com\",
                    shippingPrice: \"120\",
                    reference: orderNo,
                    paymentMethod: \"Cash on delivery\",
                    status: \"pending\"
                })
            } catch (error) {
                console.log(error)
            }
        }
        createOrder()
    }, [cart, currentUser])

这是 userRequest 函数。

const user = JSON.parse(localStorage.getItem(\"persist:root\"))?.user;
const currentUser = user && JSON.parse(user).currentUser;
const TOKEN = currentUser?.accessToken;
const BASE_URL = \"http://localhost:5000/api/\";

export const userRequest = axios.create({
  baseURL: BASE_URL,
  headers: { token: `Bearer ${TOKEN}` },
});

这是我添加订单的 API。当我在邮递员上尝试时,它工作正常,但每当我在项目上尝试时,它都会给我一个错误。

const router = require(\"express\").Router();   
 router.post(\"/\", verifyToken, async (req, res) => {
      const newOrder = new Order(req.body);
      try {
        const savedOrder = await newOrder.save();
        res.status(200).json(savedOrder);
      } catch (err) {
        res.status(500).json(err);
      }
    });

这是订单模式。

const mongoose = require(\"mongoose\");

const OrderSchema = new mongoose.Schema(
    {
        username: { type: String, required: true },
        email: { type: String },
        phone: { type: Number, required: true },
        products: [
            {
                productId: {
                    type: String
                },
                quantity: {
                    type: Number,
                    default: 1,
                },
            },
        ],
        amount: { type: Number, required: true },
        shippingPrice: { type: Number, required: true },
        address: { type: String, required: true },
        pincode: { type: Number, required: true },
        status: { type: String, default: \"pending\" },
        trackingId: { type: String },
        paymentMethod: { type: String, default: \"Cash On Delivery\" },
        reference: { type: String, unique: true },
    },

    { timestamps: true }

);
  • “500 Internal Server Error”是一个通用状态码,不是应该向任何外部方提供大量信息;你需要去检查错误日志并找出实际的原因首先是。
  • 我添加了错误日志,我只是无法理解导致错误响应的原因。
  • 这只是客户端部分的日志——它仍然告诉我们不多,比发生了 500 次。你需要去检查你的错误日志服务器端代码部分。
  • 您是否尝试读取数据? data: {index: 0, code: 11000, keyPattern: {…}, keyValue: {…}}
  • 我在服务器的控制台中没有收到任何错误。我以前得到过,但现在它不来了。

标签: javascript node.js reactjs


【解决方案1】:

这是一个更新。

我刚刚从 mongoDB 中删除了表,然后下了一个新订单,现在它已修复

【讨论】:

    猜你喜欢
    • 2021-08-27
    • 2013-04-16
    • 1970-01-01
    • 2015-12-19
    • 2018-01-22
    • 2014-11-24
    • 2021-07-27
    • 1970-01-01
    相关资源
    最近更新 更多