我正在尝试连接到这些地方并获取JSON数据:
https://content.guardianapis.com/search?q=debate&tag=politics/politics&from-date=2014-01-01&api-key=test
https://content.guardianapis.com/search?q=debates&api-key=test
https://content.guardianapis.com/search?api-key=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx
这三个我都可以通过浏览器访问,但当我尝试通过Android应用程序访问它们时,我会收到以下错误:
NetworkSecurityConfig: No Network Security Config specified, using platform default
Error response code: 400
我已将此添加到manifest.xml中:
<uses-permission android:name="android.permission.INTERNET"/>
我还将此添加到manifest.xml中:
android:networkSecurityConfig="@xml/network_security_config"
并创建了res/xml/network_security_config.xml,其中包含:
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config>
<domain includeSubdomains="true">content.guardianapis.com</domain>>
</domain-config>
将错误更改为:
D/NetworkSecurityConfig: Using Network Security Config from resource network_security_config debugBuild: true
Error response code: 400
我知道它不见了:
<trust-anchors>
<certificates src="@raw/my_ca"/>
</trust-anchors>
但我不知道证书在哪里,在什么地方,如果需要的话。
不太确定发生了什么,任何帮助都会被感激的。
此外:
我可以连接Fine并从该URL获取JSON:
https://earthquake.usgs.gov/fdsnws/event/1/query?format=geojson&eventtype=earthquake&orderby=time&minmag=6&limit=10
我所得到的是:
No Network Security Config specified, using platform default
不要买错误400,而是买200。所以我觉得有些奇怪的事情发生了,但不知道在哪里。