【发布时间】:2016-02-08 23:36:06
【问题描述】:
不确定如何在 Android 中使用 Java 将 POST 查询的标头正确组合到 Algolia 服务器。
我通过在 Chrome 的开发控制台中记录网络信息获得了有关请求标头的所有信息
我有查询字符串参数:
- x-algolia-api-key
- x-algolia-application-id
- x-algolia-agent
和表单数据参数
- 查询
- hitsPerPage
- 方面
Android 代码不工作:
URL url = new URL(urlString);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setRequestMethod("POST");
con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
con.setRequestProperty("accept", "application/json");
con.setRequestProperty("Connection", "Keep-Alive");
con.setRequestProperty("query", queryString);
con.setRequestProperty("hitsPerPage", "20");
con.setRequestProperty("facets", "*");
con.setUseCaches(false);
con.setDoInput(true);
con.setDoOutput(true);
这会一直返回 404 错误,但可能设置不正确,对于 Android 上的网络连接来说真的很新,任何帮助!
【问题讨论】:
-
http错误404是什么意思?
-
我们看不到您确实在发送 json。请添加该代码。
-
'我有查询字符串参数:'。如果你 POST 没有查询字符串。
-
您应该在答案中有 404 错误的详细信息,您也可以在您的 Algolia Dashboard 中查看它,因为它提供了对您上次 API 调用日志的访问权限。顺便说一句,有一个适用于 Android 的 API 客户端为你打包了所有这些,你为什么不使用它?
-
请求标头不是查询参数。
标签: android httpurlconnection algolia