我将尝试在使用HttpUrlConnection时设置"Authorization"头,但是在服务器上却看到它变成了"HTTP_AUTHORIZATION"。
下面是我的代码:
下面是我的代码:
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) {
}
}
顺便提一下,“Content-Type”头也被更改为CONTENT_TYPE。
为什么Android要更改它,有没有办法让我按照自己的方式发送它呢?或者我在这里做错了什么?我们在后端使用nginx和Rails,如果有影响的话。
请不要建议使用HttpClient。我只想使用HttpURLConnection,如果我能让它工作,因为Google的Android开发人员表示他们将把所有精力放在HttpURLConnection上。
谢谢。