问题描述
我遇到以下情况:
具有使用Go
框架以Gin
编写并托管在AWS
上的HTTP服务器,只有一些人(大约20%
)能够连接(每个人都从React Native
axios
客户端(使用Android
设备)。
服务器位于ec2-3-131-85-255.us-east-2.compute.amazonaws.com:2302
上。每个请求都是POST
。例如,要进行注册,用户可以访问/register
端点http://ec2-3-131-85-255.us-east-2.compute.amazonaws.com:2302/register
。
任何提示都会有所帮助。预先谢谢你。
解决方法
大多数Android设备默认情况下都不接受http协议,因此您必须添加https
并将其添加到清单应用程序标记中
android:networkSecurityConfig="@xml/network_security_config
并将此文件添加到您的android
res/xml/network_security_config
并将其写入此文件
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">Your URL</domain>
</domain-config>
<base-config cleartextTrafficPermitted="false"/>
</network-security-config>
,
也许某些客户端位于不允许HTTP请求到不同于默认端口(HTTP为80或HTTP为443)的端口的防火墙后面。您可以尝试更改服务器侦听端口80请求的端口号。