废话不说,真接上代码。
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestProperty("Content-Length", "0");
中的第二句没有起作用(发出去的http头里,未含有Content-Length字段)。
但是这个代码在android平台上跑的时候,第二句是起了作用的。
为了找出原因,真接跟到源代码中看:
public void setRequestProperty(String key, String value) {
if (connected)
throw new IllegalStateException("Already connected");
if (key == null)
throw new NullPointerException ("key is null");
if (isExternalMessageHeaderAllowed(key, value)) {
requests.set(key, value);
}
}
private boolean isExternalMessageHeaderAllowed(String key, String value) {
checkMessageHeader(key, value);
if (!isRestrictedHeader(key, value)) {
re