我正在使用Facebook的create-react-app。当我启动Web客户端时,我在控制台中看到:
You can now view web-client in the browser.
Local: http://localhost:3000/
On Your Network: http://192.168.1.107:3000/
问题是我的网络客户端使用localhost连接到api-server,这意味着我无法使用不同设备上的IP地址来调试问题。
ENV-variables.js:
export const ENV = process.env.NODE_ENV || 'development';
const ALL_ENV_VARS = {
development: {
GRAPHQL_ENDPOINT_URI: 'http://localhost:4000/graphql',
},
....
我尝试用以下内容更新上述内容:
GRAPHQL_ENDPOINT_URI: `http://${process.env.ip}:4000/graphql`,
这不起作用,process.env.ip
返回undefined。如何让上面的GRAPHQL_ENDPOINT_URI使用以某种方式创建反应应用程序的IP地址?
答案 0 :(得分:0)
尝试将以下内容添加到客户端package.json:
"proxy": "http://localhost:4000/",
然后您可以离开
http://localhost:4000
关闭从客户端指向API服务器的任何URL。您只需将这些地址称为
/graphql/<any additional URL data>
我使用Node / Express后端和React前端执行了相同的操作 - 我使用以下内容解析了server.js中的/ api部分:
//Use our router configuration when we call /api
app.use('/api', router);
只需用/ graphql替换/ api。
请查看本文以获得进一步说明。希望这有帮助!