类型错误:无法读取未定义的属性“路径”?强大

问题描述

我正在制作一个 MERN 应用程序,并在使用 Formidable 和 Cloudinary 在我的路线中发出 Post 请求时。 “路径”未定义。之前创建路线时,它在 Postman 中工作。但是在尝试在客户端进行 axios 调用后,我会收到一个 typeError 说“路径未定义”。这与使用 Cloudinary 通过表单上传的图像有关,但我不明白为什么路径未定义?

this thread

后端路由

// const express = require('express')
// const router = express.Router()
const router = require('express').Router();
const {House} = require('../../Models/House');
const Formidable = require('formidable');
const cloudinary = require('cloudinary').v2
const mongoose = require('mongoose');
require("dotenv").config()
// const { request,response } = require('express');
// const dotenv = require("dotenv");


// dotenv.config();


//mongoDB and Cloudinary

const mongoURI = process.env.Mongo_URI;

cloudinary.config({
    cloud_name: process.env.CLOUD_NAME,api_key:process.env.API_KEY,api_secret: process.env.API_SECRET
})


mongoose.connect(mongoURI,{useNewUrlParser:true,useUnifiedTopology:true},(error)=>{
    if(error) {
        return console.log(error)
    }
    return console.log("database is connected")
})

router.post("/api/house-listing",(request,response)=>{
    const form = new Formidable.IncomingForm();

    form.parse(request,(error,fields,files)=>{
        const {
            price,city,county,numOfbeds,numOfBaths,numOfGarages,isSaleOrRent,} = fields

        const { houseImage } = files;

        cloudinary.uploader.upload(houseImage.path,{folder:'/houseAgency/houses'},async(error,result)=>{
            if(error) {
                console.log(error)
            }
            const image_url = result.url;

            const newHouse = new House({
                house_location: {
                    
                    county: county,city: city,},house_details: {
                    price: price,numOfbeds: numOfbeds,numOfBaths: numOfBaths,numOfGarages: numOfGarages,isSaleOrRent: isSaleOrRent,house_image: image_url,}
            })
            const savedHouse = await newHouse.save();
            return response.status(200).json(savedHouse)
        })
    })
})



module.exports = router;

型号

const mongoose = require('mongoose');


const HouseSchema = mongoose.Schema({
    house_location: {
        city:{type:String,required: true},county:{type:String,required: true}
    },house_details: {
        price: { type: Number,isSaleOrRent: {type: String,numOfbeds: {type: Number,numOfBaths: {type: Number,numOfGarages: { type: Number,house_image: {type: String,required: true}
    }
});


const House = mongoose.model("House",HouseSchema);
module.exports = {House}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...