如何解决浏览器错误:无法加载资源:服务器响应状态为 500 ,终端错误:代理错误:无法代理请求
我正在尝试根据指南构建 MERN 堆栈应用程序。这个应用程序的重点是保存一些信息的链接并制作它的快捷方式,按下快捷方式链接后,它必须重定向到原始链接。我的问题是,按下快捷链接后,我被重定向到这个看起来很奇怪的链接“http://localhost:3000/detail/http//:localhost:5000/t/gQ3pKjsPQ”,并收到错误“失败加载资源:服务器响应状态为 500(内部服务器错误)”。这就是实现重定向的地方
const {Router} = require('express')
const Link = require('../models/Link')
const router = Router()
router.get('/:code',async (req,res) => {
try {
const link = await Link.findOne({code: req.params.code})
if (link) {
link.clicks++
await link.save()
return res.redirect(from.link)
}
res.status(404).json('Can not find the link')
} catch (e) {
res.status(500).json({message: 'Something went wrong'})
}
})
module.exports = router
有时(就像不总是这样,不明白为什么)我在终端中收到此错误“[1] 代理错误:无法将请求 /api/link/http 从 localhost:3000 代理到 http: //本地主机:5000/。”
import React,{ useCallback,useEffect,useState,useContext } from 'react'
import { useParams } from 'react-router-dom'
import { useHttp } from '../hooks/http.hook'
import { AuthContext } from '../context/AuthContext'
import { Loader } from '../components/Loader'
import { LinkCard } from '../components/LinkCard'
export const DetailPage = () => {
const {token} = useContext(AuthContext)
const {request,loading} = useHttp()
const [link,setLink] = useState(null)
const linkId = useParams().id
const getLink = useCallback( async () => {
try {
const fetched = await request(`/api/link/${linkId}`,'GET',null,{
Authorization: `Bearer ${token}`
})
setLink(fetched)
} catch (e) {}
},[token,linkId,request])
useEffect(() => {
getLink()
},[getLink])
if(loading) {
return <Loader />
}
return (
<>
{!loading && link && <LinkCard link = {link} />}
</>
)
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。