您如何从 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.