您如何从 React Native 应用程序向快速服务器发送请求?
How do you send a request to an express server from a react native app?
我有 2 个独立的应用程序,一个 react-native
应用程序和一个 express
后端服务器。我使用 express-generator
创建了服务器。我的服务器在 users.js
中有以下代码
router.get('/', function(req, res, next) {
res.json([{
id: 1,
username: "foo"
}, {
id: 2,
username: "bar"
}]);
});
服务器设置为侦听端口 8080 并具有 app.use('/users', users)
。
基本上,只有 express-generator
.
附带的所有代码
在我的 React Native 应用程序中,我有:
"proxy": "http://localhost:8080"
然后在App.js
:
componentDidMount() {
fetch('/users'
.then(res => res.json())
.then(users => this.setState({ users }))
}
我正在使用 Expo 在 Android 设备上加载我的应用程序,并得到:
unexpected url: /users
。
如果我在浏览器中访问localhost:8080
,数据是可见的,所以我认为问题一定是在客户端。
您需要在发出请求时添加完整的主机名和端口号。获取数据时需要写成complete url
http://localhost:8080/users 在你的 App.js.
我有 2 个独立的应用程序,一个 react-native
应用程序和一个 express
后端服务器。我使用 express-generator
创建了服务器。我的服务器在 users.js
router.get('/', function(req, res, next) {
res.json([{
id: 1,
username: "foo"
}, {
id: 2,
username: "bar"
}]);
});
服务器设置为侦听端口 8080 并具有 app.use('/users', users)
。
基本上,只有 express-generator
.
在我的 React Native 应用程序中,我有:
"proxy": "http://localhost:8080"
然后在App.js
:
componentDidMount() {
fetch('/users'
.then(res => res.json())
.then(users => this.setState({ users }))
}
我正在使用 Expo 在 Android 设备上加载我的应用程序,并得到:
unexpected url: /users
。
如果我在浏览器中访问localhost:8080
,数据是可见的,所以我认为问题一定是在客户端。
您需要在发出请求时添加完整的主机名和端口号。获取数据时需要写成complete url http://localhost:8080/users 在你的 App.js.