簡體   English   中英

如何調試 MERN 上的服務器端錯誤?

[英]How do I debug server-side errors on MERN?

我有這個前端代碼:

export const CreatePage = () => {
const auth = useContext(AuthContext)
const {request} = useHttp()
const [content, setContent] = useState('')
const [title, setTitle] = useState('')
const [lead, setLead] = useState('')

useEffect(() => {
    window.M.updateTextFields()
},[])

const postHandler = async () => {
    try {
        const data = await request('/api/post/generate', 'POST', {title: title, lead: lead, content: content}, {
            Authorization: `Bearer ${auth.token}`
        })
        console.log(data)
    } catch (e) {}
}

而這個后端代碼:

router.post('/generate', auth, async (req, res) => {
try {
    const baseURL = config.get('baseURL')
    const {title, lead, content} = req.body

    // if (!title || !lead || !content) {
    //     return res.status(422).json({error: 'Please, input ALL fields'})
    // }

    const Post = new Post({
        title, lead, content, owner: req.body.user.userId // req.user.userId
    })

    await Post.save()
    res.status(201).json({Post})

} catch (e) {
    res.status(500).json({message: 'Something went wrong'})
}})

我已經嘗試了很多東西,但我仍然得到這個錯誤。 我知道這是一個服務器端錯誤,但這就是我能夠弄清楚的全部。

PS如果對代碼有任何疑問,我會在稍后添加。

UPD:順便問一下,這可能是問題的原因嗎? 控制台日志:

[1] Proxy error: Could not proxy request /api/post/generate from localhost:3000 to http://localhost:5000.

可能是因為cors,你不能從不同的url發送請求。 嘗試安裝cors並配置:

const cors = require("cors");

app.use("/", require('./src/routes'));
app.use(cors({
  origin: '*'
}))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM