读书人

联网取不到值 展示http头content-leng

发布时间: 2013-08-10 21:14:06 作者: rapoo

联网取不到值 显示http头content-length:0



private String getHttp(String url)
{
//url = "http://10.0.0.172:80"+url;
System.out.println("getHttp:"+url);
String re = "";
try{
HttpConnection httpConn = (HttpConnection)Connector.open(url);
//httpConn.setRequestProperty("X-Online-Host",cHost);
httpConn.setRequestProperty("Accept", "*/*");
httpConn.setRequestProperty("Connection", "Keep-Alive");
httpConn.setRequestMethod(HttpConnection.GET);


int i = 0;
String message = "";
String key = "";
String value = "";
while ( ( value = httpConn.getHeaderField( i ) ) != null )
{
key = httpConn.getHeaderFieldKey( i++ );
message = message + key + ":" + value + "\n";
}
System.out.println( message );

DataInputStream dis = httpConn.openDataInputStream();
byte messages[];
int length = (int)httpConn.getLength();
messages = new byte[length];
dis.readFully(messages);
re = new String(messages);
httpConn.close();
} catch (Exception e){
System.out.println(e.toString());
e.printStackTrace();
}
return re;
}


可是我在浏览器中输入要访问的地址是没有问题的服务器端能正常输出值

http头是对的啊



[解决办法]
Content-Length是需要服务器设置吧
resultCode对吗

客户端应该没什么问题。
[解决办法]





StreamConnection 不会有 content-length:0



















public String connect2(String host,String hport,String method,String url17,String cook1998 ,String post_er6)
{




try{


StreamConnection conn;
DataOutputStream outputStream_dos;
DataInputStream inputStream_dis;


byte[] buff23 = new byte[15360];


if(host==""
[解决办法]
host==null)return "";
if(hport==""
[解决办法]
hport==null)hport="80";
if(method==""
[解决办法]
method==null)method="GET";
if(url17==""
[解决办法]
url17==null)return "";



conn = (StreamConnection) Connector.open("socket://"+host+":"+hport, Connector.READ_WRITE);
outputStream_dos=conn.openDataOutputStream();



String str11=method+" "+url17+" HTTP/1.1\r\nHost: "+host+"\r\nAccept: */*\r\n";


if(cook1998!=""
[解决办法]
cook1998!=null)
str11+="Cookie: "+cook1998+"\r\n";



str11+="\r\n";

byte[] getb11 = str11.getBytes();


outputStream_dos.write(getb11,0,str11.length());

outputStream_dos.flush();






inputStream_dis=conn.openDataInputStream();

int count2 = inputStream_dis.read(buff23,0,15360);


String str33 = new String(buff23);

//mainform.append(str33);
//System.out.println(count2);
//System.out.println(b23.toString());


outputStream_dos.close();
inputStream_dis.close();
conn.close();


return str33;}catch(Exception e){e.printStackTrace();}




return "";}[color=#00FF00][/color]

读书人网 >J2ME开发

热点推荐