【问题标题】:Webpack-dev-server config to route API calls from react-router to node/express routerWebpack-dev-server 配置将 API 调用从 react-router 路由到 node/express 路由器
【发布时间】:2017-02-14 23:20:24
【问题描述】:

我有一个客户端 react/redux 应用程序,它需要使用 express 路由器从我的 node express 收集数据。

在开发环境中,我们使用 webpack-dev-server,它不会将 /api 调用路由到 express/node。所以我们需要在devserver上配置一个代理。

这里是配置:

  devServer: {
      proxy: { 
        '/api/*': 'http://localhost:8080'
      }    

每个 /api/whatever/whatever 或 api/whatever 调用都必须重定向到 node/express。

我在 webpack 控制台上收到以下错误:

[HPM] Error occurred while trying to proxy request /api/admin/user from localhost:8080 to http://localhost:8080 (ENOBUFS) (https://nodejs.org/api/errors.html#errors_common_system_errors)

问题:

  • 错误代码中的ENOBUFS 是什么意思?
  • 我是否需要配置不同的端口或不同的节点/快速服务来为 API 提供服务?
  • 如何配置代理以调用 express/router API?

【问题讨论】:

  • 更新?运气好吗?

标签: node.js api express


【解决方案1】:

server.js

app.get("/api/data", (req, res) => {
  res.send("hi from server"); // replace me with real data
});

webpack.config

//need the ^ before your path name
proxy: {
      "^/api/*": {
        target: "http://localhost:3001/api/",
        secure: false
      }
    }

【讨论】:

    猜你喜欢
    • 2017-05-19
    • 2020-07-02
    • 2019-02-19
    • 2018-11-14
    • 2018-04-26
    • 2022-01-07
    • 1970-01-01
    • 1970-01-01
    • 2015-05-27
    相关资源
    最近更新 更多