Java 在Android中使用httpUrlConnection发送授权头
我试图在使用HttpUrlConnection时设置“Authorization”头,但我在服务器上看到它是“HTTP\u Authorization” 这是我的密码:Java 在Android中使用httpUrlConnection发送授权头,java,android,Java,Android,我试图在使用HttpUrlConnection时设置“Authorization”头,但我在服务器上看到它是“HTTP\u Authorization” 这是我的密码: public static String doGet(String params, String accessToken) throws MHNetworkException { try { URL url = new URL(getServerUrl());
public static String doGet(String params, String accessToken)
throws MHNetworkException {
try {
URL url = new URL(getServerUrl());
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestProperty("Content-Type", "application/json");
conn.setRequestProperty("Authorization", "Token token="
+ accessToken);
conn.setRequestMethod("GET");
int httpStatus = conn.getResponseCode();
Log.v(tag, "httpStatus " + httpStatus);
if (httpStatus == 200) {
return MHIOUtil.getInputStreamAsString(conn.getInputStream());
}
} catch (MalformedURLException me) {
} catch (IOException ioe) {
}
}
顺便说一句,“内容类型”标题也被更改为内容类型
为什么安卓正在改变它,我有没有办法完全按照我想要的方式发送它。还是我做错了什么?如果有必要,我们将在后端使用nginx和Rails
请不要建议使用HttpClient。我只想使用HttpURLConnection,如果我能让它工作的话,因为谷歌的安卓开发者说他们将把所有的努力都放在HttpURLConnection上
谢谢。没什么问题。大多数头文件都可以在以HTTP为前缀的服务器上访问,但内容类型是经过特殊处理的。Android没有改变它,映射正在服务器上进行。到大写的映射是标准的(标题的大小写不重要),用“\”替换“-”也是标准的 看