Android - Envoi HTTPS Obtenir une demande
Je voudrais envoyer un HTTPS Demande à google shopping api toutefois, rien n'est assez de travail pour moi, par exemple, c'est ce que j'essaie en ce moment:
try {
HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet();
request.setURI(new URI("https://www.googleapis.com/shopping/search/v1/public/products/?key={my_key}&country=&q=t-shirts&alt=json&rankByrelevancy="));
HttpResponse response = client.execute(request);
} catch (URISyntaxException e) {
e.printStackTrace();
} catch (ClientProtocolException e) {
//TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
//TODO Auto-generated catch block
e.printStackTrace();
}
return response;
}
Si quelqu'un a des suggestions sur la manière de l'améliorer ou de le remplacer s'il vous plaît laissez-moi savoir, merci d'avance.
source d'informationauteur Sam Jackson
Vous devez vous connecter pour publier un commentaire.
Vous devriez obtenir une erreur de compilation.
C'est la version correcte:
Donc maintenant, si vous avez une erreur, votre réponse sera renvoyée comme null.
Une fois que vous avez la réponse et vérifié pour les nuls, vous aurez envie d'obtenir le contenu (c'est à dire votre JSON).
http://developer.android.com/reference/org/apache/http/HttpResponse.html
http://developer.android.com/reference/org/apache/http/HttpEntity.html
http://developer.android.com/reference/java/io/InputStream.html
Cela vous donne un InputStream de travailler avec. Si vous voulez convertir cette chaîne tu ferais ci-dessous ou équivalent:
http://www.mkyong.com/java/how-to-convert-inputstream-to-string-in-java/
Quand vous avez cette chaîne, vous devez créer un JSONObject:
http://developer.android.com/reference/org/json/JSONObject.html
Fait!
Avez-vous l'ajouter à votre manifeste
Vous pouvez essayer de cette façon, peut-être à l'aide de la classe URLConnection
Grâce à Faire HTTPS /Requête HTTP dans Android
Ajouter une classe Java CustomSSLSocketFactory.java
dans votre code
travaille dans HttpPost trop.
C'est difficile à dire pour sûr, si vous ne nous dites pas quelle est l'erreur.
Mais, si vous exécutez ce sur le thread de l'INTERFACE utilisateur et le serveur web prend plus que quelques secondes pour répondre, vous obtiendrez une Application ne Répond Pas d'avertissement du système. Assurez-vous que vous faites tout les transferts réseau sur un thread séparé.