gpt4 book ai didi

android - 如何在 React Native Fetch API 中更改用户代理

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:41:36 25 4
gpt4 key购买 nike

我尝试在 React Native Fetch API 中更改用户代理:

const URLENCODED_HEADER = {
'Accept': 'application/json',
'Content-Type': 'application/json',
'User-Agent': Platform.OS + "/" + DeviceInfo.getUniqueID().toString()
}

export async function doRegister(secureInfo) {
formBody = encodeParameters(secureInfo)
try {
let response = await fetch(SERVER_URL+'/user/register', {
method: "POST",
headers: URLENCODED_HEADER,
body: formBody,
credentials: 'include'
});
let responseJson = await response.json();
return responseJson;
} catch(error) {
console.error(error);
throw error;
}
}

我还检查了 Reactotron 中的请求 header : enter image description here

它显示了我想要的正确信息。

但是,在服务器端,ua 仍然是 android 和 ios 设备的默认设置:

Mozilla/5.0 (iPad; CPU OS 11_2_6 like Mac OS X) AppleWebKit/604.5.6 (KHTML, like Gecko) Version/11.0 Mobile/15D100 Safari/604.1

okhttp/3.6.0

Dalvik/2.1.0 (Linux; U; Android 5.1.1; Coolpad 3622A Build/LMY47V)

是否可以为在 react-native 中发送的请求更改 user-agent?如果可以如何更改?

最佳答案

尝试Stop Remote JS Debug对其进行测试。

我也遇到了同样的问题。它对我有用。 :)

一些注意事项:

  1. 仅适用于 React Native
  2. React Native 已经有一个默认的用户代理。类似于:<PROJECT_NAME>/<VERSION> CFNetwork/975.0.3 Darwin/17.7.0
  3. 在使用远程 JS 调试时,它将使用浏览器用户代理。类似于:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36

关于android - 如何在 React Native Fetch API 中更改用户代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49416232/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com