如何通过 GET 请求通过 fetch API 发送数据?

How can I send data through fetch API by GET request?

我想通过 fetch API 将一些数据发送到服务器,以便它可以基于此查询数据库。不像 Ajax 我找不到任何合适的方法来这样做。 这是我的获取调用:

{fetch("http://192.168.90.53:4000/game/?email=adicool2294@gmail.com", {method: "GET"} )
        .then((response) => response.json())
        .then((responseData) => {
            id= responseData.id;
            name= responseData.name; 
            console.log(responseData);
        })
       .catch((error) => {
             console.warn(error);
           }); 
  }
}

我想发送一个参数,例如电子邮件,以便服务器可以使用它查询数据库。我正在使用 react-native android 因此不能使用 Ajax 请求。 我只想使用 GET 方法。目前,服务器未在 req.query

中显示我在 URL 中传递的查询参数
You can add that like below

fetch("http://192.168.90.53:4000/game", obj)  
.then(function(response) => response.json())
.then((responseData) => {
  id = responseData.id;
  name = responseData.name; 
  console.log(responseData);
},
.catch((error) => {
  console.warn(error);
}); 

var obj = {  
  method: 'POST',
  body: JSON.stringify({
    'email': your_email_here,
  })
};

GET 请求不支持正文,并且必须在 URL 中发送参数,如示例中所示。如果您无法在 server-side 上看到它们,则可能是服务器的问题,应该作为一个单独的问题提出。

作为完整性测试,在浏览器(或像 Postman 这样的工具)中导航到 URL 并测试结果是否正确,然后再使用 fetch 实现调用,这样您至少确认是服务器问题还是 JavaScript 问题。

尝试使用 %40 转义 @ 字符或执行类似 {fetch("http://192.168.90.53:4000/game/?email=" + encodeURIComponent('adicool2294@gmail.com'), {method: "GET"} )...

的操作