微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

浏览器错误:无法加载资源:服务器响应状态为 500 ,终端错误:代理错误:无法代理请求

如何解决浏览器错误:无法加载资源:服务器响应状态为 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 举报,一经查实,本站将立刻删除。