我对BlackBerry上的httpConnection和getResponseCode有一个问题

我对BlackBerry上的httpConnection和getResponseCode有一个问题,blackberry,blackberry-simulator,httpconnection,getresponse,Blackberry,Blackberry Simulator,Httpconnection,Getresponse,如果我尝试连接jpeg相机,此连接正常工作。但是当我连接到Mjpeg(jpeg流)相机时,我不能显示“System.out.println(“onreturn oncesi” +输出控制台上的httpConnection.getResponseCode())。 我正在使用Emulator和MDS。我可以在MDS上显示。。。小溪来了 url = getUrl(); queryString = encodeURL(queryString); byte postmsg[] = queryStr

如果我尝试连接jpeg相机,此连接正常工作。但是当我连接到Mjpeg(jpeg流)相机时,我不能显示“System.out.println(“onreturn oncesi” +输出控制台上的httpConnection.getResponseCode())。 我正在使用Emulator和MDS。我可以在MDS上显示。。。小溪来了

url = getUrl();
queryString = encodeURL(queryString);    
byte postmsg[] = queryString.getBytes("UTF-8");
httpConnection = (HttpConnection) Connector.open(url
+ ";deviceside=false", Connector.READ_WRITE);
httpConnection.setRequestMethod(HttpConnection.GET);
httpConnection.setRequestProperty("Authorization", getBase64Encode());
os = httpConnection.openDataOutputStream(); 

for (int i = 0; i < postmsg.length; i++) {
os.write(postmsg[i]);
}
{
 if (!cancel) {
     System.out.println(httpConnection.getURL()+ 
         " *****"+httpConnection.getPort());
     System.out.println("onreturn oncesi"
         + httpConnection.getResponseCode());
     onReturn(httpConnection.getResponseCode(), httpConnection
         .openInputStream(),(int) httpConnection.getLength());

     System.out.println("onreturn sornrası");
 }
 os.close();
 httpConnection.close();
}
} catch (Exception e) {
System.out.println("hata " + e.getMessage());
try {
    httpConnection.close();
    Thread.sleep(60);
} catch (Exception ie) {
}
onError(e);
}
url=getUrl();
queryString=encodeURL(queryString);
字节postsg[]=queryString.getBytes(“UTF-8”);
httpConnection=(httpConnection)连接器。打开(url
+“deviceside=false”,连接器。读写);
setRequestMethod(httpConnection.GET);
setRequestProperty(“授权”,getBase64Encode());
os=httpConnection.openDataOutputStream();
对于(int i=0;i
一个问题是您没有正确设置请求头

您的发布数据,因此不应
httpConnection.setRequestMethod(httpConnection.GET)
be
httpConnection.setRequestMethod(httpConnection.POST)

您还应该设置内容长度
httpConnection.setRequestProperty(“内容长度”,Integer.toString(postsg.Length))

当我们正在做的时候,我会继续设置这些:

内容类型:可能为“图像/jpeg”。不确定它应该是什么<代码>httpConnection.setRequestProperty(“内容类型”、“图像/jpeg”)

UserAgent我发现一些站点在RIM(Java/xxx)中屏蔽了默认的用户代理,认为它是一个爬行器,所以我喜欢设置用户代理。
httpConnection.setRequestProperty(“用户代理”,“mycolapp/V1(App_-RIM)”

您正在使用哪个版本的JDE?这是通过HTTPS吗?我这样问是因为在像4.5这样的旧版本上,您必须以不同的方式创建http和https。在较新的版本中,您可能应该使用新的ConnectionFactory,而不是Connector


祝你好运,我希望你能找到答案

我正在使用4.6。。。ConnectionFactory在4.6中不起作用,我无法接受响应代码…@atasoyh如果打开HTTPS连接,请确保将结果从连接器强制转换到正确的连接类。我想既然您使用了授权,您的连接是通过HTTPS的?如果是,则强制转换为(HttpsConnection)而不是(HttpConnection)。同时在谷歌上搜索“马库斯·沃特金斯和康涅狄格工厂”(适用于4.6版),虽然它并不完美,但它会引导你走向正确的方向。