rest - Blackberry HttpConnection y cadena de consulta
java-me query-string (1)
He estado teniendo problemas para conectarme a un uri cuando añado una cadena de consulta ... Siempre obtengo un código de 400 HTTP ... sin embargo, cuando pruebo el navegador, la misma URL, todo va bien ...
Esto es lo que tengo:
String query = "q=hello";
byte[] queryBytes = query.getBytes();
En algún lugar de mi código abro un HttpConnection usando la queryBytes como esta:
String uri = "https://www.google.co.ve/search" + "?" + new String(queryBytes);
HttpConnection request = (HttpConnection) Connector.open(uri);
request.getResponseCode();
Si no uso bytes para mi conexión, todo funciona bien:
String uri = "https://www.google.co.ve/search?q=hello";
Gracias por adelantado
Cuando intento esto, iam obtiene el código http 200.
try {
String httpURL = "https://www.google.co.ve/search?q=hello";
HttpConnection httpConn;
httpConn = (HttpConnection) Connector.open(httpURL);
httpConn.setRequestMethod(HttpConnection.GET);
DataOutputStream _outStream = new DataOutputStream(httpConn.openDataOutputStream());
byte[] request_body = httpURL.getBytes();
for (int i = 0; i < request_body.length; i++) {
_outStream.writeByte(request_body[i]);
}
DataInputStream _inputStream = new DataInputStream(
httpConn.openInputStream());
StringBuffer _responseMessage = new StringBuffer();
int ch;
while ((ch = _inputStream.read()) != -1) {
_responseMessage.append((char) ch);
}
String res = (_responseMessage.toString());
String responce = res.trim();
httpConn.close();
Dialog.alert(responce);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}