Domanda

se provo a collegare la macchina fotografica jpeg, questa connessione funziona a destra. Ma quando mi collego ad una telecamera Mjpeg (jpeg-stream), non posso mostrare "System.out.println (" onreturn oncesi"          + HttpConnection.getResponseCode ());" sulla console di uscita.  Sto usando l'emulatore e MDS. Posso mostrare su MDS, ... flusso è in arrivo.

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);
}
È stato utile?

Soluzione

Un problema è il tuo non impostare le intestazioni di richiesta in modo corretto.

I tuoi dati di invio, quindi non dovrebbe essere httpConnection.setRequestMethod(HttpConnection.GET); httpConnection.setRequestMethod(HttpConnection.POST);.

E si dovrebbe anche impostare il Content-Length : httpConnection.setRequestProperty("Content-Length", Integer.toString(postmsg.length));

E mentre che ci siamo vorrei andare avanti e impostare questi:

tipo di contenuto : forse come "image / jpeg". Non sei sicuro di quello che dovrebbe essere per MJPEG ... httpConnection.setRequestProperty("Content-Type", "image/jpeg");

AgenteUtente Ho scoperto che alcuni siti bloccano l'user-agent predefinito in RIM (Java / xxx), pensando che sia un ragno, così mi piace impostare l'utente agent.httpConnection.setRequestProperty("User-Agent", "MyCoolApp/V1 (App_RIM)");

Quale versione del JDE stai usando? È questo su HTTPS? Lo chiedo perché su versioni precedenti come 4.5 si doveva creare HTTP e HTTPS in modo diverso. Nelle versioni più recenti probabilmente si dovrebbe utilizzare la nuova ConnectionFactory, invece di connettore.

Buona fortuna e spero che capirlo !!!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top