Pregunta

Si intento conectar la cámara JPEG, esta conexión funciona bien. Pero cuando me conecto a una cámara MJPEG (JPEG-stream), no puedo mostrar "System.out.println (" onreturn oncesi"          + HttpConnection.getResponseCode ());" en la Salida de consola.  Estoy utilizando el emulador y MDS. Puedo mostrar en MDS, ... corriente está por venir.

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);
}
¿Fue útil?

Solución

Uno de los problemas es su no establecer cabeceras de solicitud correctamente.

Sus datos contables, por lo que no deben ser httpConnection.setRequestMethod(HttpConnection.GET); httpConnection.setRequestMethod(HttpConnection.POST);.

Y usted debe también establecer el contenido de longitud : httpConnection.setRequestProperty("Content-Length", Integer.toString(postmsg.length));

Y mientras estamos en ello me gustaría seguir adelante y establece los siguientes:

tipo de contenido : tal como "image / jpeg". No está seguro de lo que debería ser para MJPEG ... httpConnection.setRequestProperty("Content-Type", "image/jpeg");

agente de usuario He encontrado que algunos sitios bloquean el agente de usuario por defecto en el MRI (Java / xxx), pensando que es una araña, así que me gusta poner el usuario agent.httpConnection.setRequestProperty("User-Agent", "MyCoolApp/V1 (App_RIM)");

¿Qué versión de la JDE está usando? Es esto a través de HTTPS? Lo pregunto porque en las versiones más antiguas como 4.5 tenía que crear HTTP y HTTPS de forma diferente. En las versiones más recientes probablemente debería utilizar el nuevo ConnectionFactory, en lugar de conector.

Buena suerte y espero que la figura hacia fuera !!!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top