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

使用Axios发送请求返回ERR_NETWORK,排查CORS问题无果求助

解决Axios ERR_NETWORK错误及CORS问题

核心错误:错误配置CORS请求头

你在Axios请求里添加的Access-Control-Allow-Origin、Access-Control-Allow-Headers等头完全无效——这类CORS相关头是服务器端需要返回的响应头,不是客户端请求时要发送的。先把这些错误头从请求配置里删掉,修正后的services.js如下:

import axios from "axios";

export const apiClient = axios.create({
    baseURL: 'https://laboratorio3-f36a.restdb.io/rest',
    headers: {
        'x-apikey': '60eb09146661365596af552f',
        'Accept': 'application/json',
        'Content-Type': 'application/json' // 补充post请求必需的内容类型头
    },
});

export default{
    transaction(purchaseData){
        return apiClient.post(`/transactions/`, purchaseData) // 注意路径改为复数,和其他方法保持一致
    },
    getHistorial(id){
        return apiClient.get(`/transactions/${id}`)
    },
    delete(id){
        return apiClient.delete(`/transactions/${id}`)
    },
    edit(id){
        return apiClient.put(`/transactions/${id}`)
    }
}

关键解决步骤:配置restdb.io的CORS规则

你用的是restdb.io托管数据库,必须在它的后台配置允许你的前端源访问:

  1. 登录restdb.io控制台,进入对应数据库
  2. 找到Settings -> CORS选项
  3. 在Allowed Origins中添加http://localhost:8080,生产环境再补充对应域名
  4. 确保Allowed Methods包含POST、GET、PUT、DELETE你用到的所有请求方法
  5. 保存配置

额外排查项

  1. 路径一致性:你之前的post方法用单数/transaction/,其他方法用复数/transactions/,要和restdb里的集合名称完全匹配,否则会触发404进而导致网络错误
  2. 网络环境:检查是否有代理、VPN或浏览器安全插件拦截请求;用Postman直接测试API,排除前端代码外的问题
  3. 数据格式:确保purchaseData是合法JSON格式,没有语法错误

验证方式

用Postman测试post请求:

  • 请求地址:https://laboratorio3-f36a.restdb.io/rest/transactions
  • 请求头添加x-apikey: 60eb09146661365596af552f和Content-Type: application/json
  • Body传入你的purchaseData数据
    如果Postman能成功,说明问题在前端CORS配置或路径;如果Postman也失败,就是restdb配置或API路径错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 22:30:33