httpurlconnection (또는 httpsurlconnection)을 만드는 데 문제가 있습니다. 실제로 이것은 url.openconnection을 캐스팅 한 후 연결 헤더를 설정하는 것에 관한 것입니다. 실행중인 동일한 코드가 지금 실행되지 않기 전에. 나는 이해할 수 없었다. (예외 : 이미 연결되었거나 ... ..)android의 HttpURLConnections에 관한 질문입니다. (cast-URLConnection, url.openConnection, getOutPutStream() ..)
때까지 실행됩니다. httpConn.getOutPutStream(); 현재 "java.net.ProtocolException : 요청 헤더가 이미 전송되었으므로 OutputStream을 사용할 수 없습니다!"오류가 발생합니다.
내 잘못은 어디입니까 ??
나는 코드를 사용하기 전에 모든 코드 (나도 또 다른 질문에 대한 This Code가)URL url = new URL(getUrl());
URLConnection conn = url.openConnection();
HttpURLConnection httpConn=(HttpURLConnection)conn; /*or HttpsURLConnection*/
httpConn.set...
...
httpConn.connect();
...
내가 캐스팅 후 일부 설정을 설정하려고하지만 결과는 동일합니다 here이다.
URL url = new URL(getUrl());
conn = url.openConnection();
conn.setAllowUserInteraction(false);
conn.setConnectTimeout(10000);
conn.setRequestProperty("Accept-Charset", "utf-8");
conn.setRequestProperty("Content-Type",
"text/xml; charset=utf-8");
conn.setRequestProperty("SOAPAction",
"http://tempuri.org/IAuthenticationServiceNew/Authenticate");
conn.setRequestProperty("Software-Version", AppData.VERSION);
conn.setDoOutput(true);
httpConn = (HttpsURLConnection) conn;
httpConn.setChunkedStreamingMode(getParams().getBytes("UTF8").length);
httpConn.setInstanceFollowRedirects(true);
httpConn.connect();
os = httpConn.getOutputStream();
os.write(getParams().getBytes("UTF8"));