You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MERN项目Redux Toolkit认证请求服务器遇net::ERR_NAME_NOT_RESOLVED错误求助

解决MERN项目中请求服务器出现net::ERR_NAME_NOT_RESOLVED的问题

核心问题分析

net::ERR_NAME_NOT_RESOLVED 表示浏览器无法解析目标请求地址,本质是请求的URL格式无效或服务器地址不可访问。从你提供的代码来看,最直接的错误是请求URL存在格式问题。

步骤1:修复请求URL的格式错误

你的axios.post请求中,模板字符串里的URL被换行和多余空格拆分,导致实际请求地址包含无效的换行符:

// 错误写法:URL包含换行和空格
const response= await axios.post(`http://176.232.58.54
        :5000/register`,userData,config)

修正方式:使用你已定义的backendUrl进行拼接,避免硬编码时的格式错误:

import { createAsyncThunk } from "@reduxjs/toolkit";
import axios from 'axios';

const backendUrl = 'http://176.232.58.54:5000';

export const registerUser = createAsyncThunk('register', async(userData)=>{
    try{
        const config = {
            headers: {
              'Content-Type': 'application/json',
            },
          }
        // 修正:用变量拼接URL,保证格式正确
        const response= await axios.post(`${backendUrl}/register`, userData, config)
        return response.data;
    } catch(error){
        console.error(error.message)
        // 建议抛出错误,让Redux Toolkit处理rejected状态
        throw error;
    }
})

步骤2:验证服务器的可访问性

如果修复URL后仍报错,需要确认服务器本身是否可被访问:

  • 检查服务器端口:服务器代码中使用process.env.PORT || 5000,启动时查看控制台日志,确认实际运行的端口是5000还是环境变量中配置的其他端口,前端的backendUrl需与之一致。
  • 测试服务器连通性:在浏览器或终端中直接访问http://176.232.58.54:5000/register(GET请求可能返回405 Method Not Allowed,但只要不出现解析错误,就说明服务器地址是有效的)。
  • 检查端口开放情况:如果服务器部署在远程主机,需确认主机的防火墙/安全组已开放5000端口,允许外部访问。

步骤3:其他排查点

  • 如果是本地开发场景,服务器运行在本地的话,应使用http://localhost:5000或http://127.0.0.1:5000作为backendUrl,而非公网IP。
  • 确认服务器已正常启动,且数据库连接未导致服务器崩溃(可查看服务器控制台日志排查)。

内容的提问来源于stack exchange,提问作者Ali Baran

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 23:48:10