我正在尝试连接以下任意一个地方并获取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
这三个网站我可以通过浏览器访问,但是当我尝试通过一个安卓应用程序访问它们时,我会收到以下错误信息:
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>
但是我不知道证书在哪里或者是什么,也不确定是否需要。
不太清楚发生了什么事情,任何帮助都将不胜感激。
此外,我可以成功连接并从此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,这让我觉得有些奇怪,但不确定问题出在哪里。