qu'est-ce que stringentity dans android et son utilisation
Je suis nouveau sur android , je suis la suite de ce tutoriel, j'ai trouvé le code ci-dessous , il est la conversion de chaîne json à StringEntity. corrigez-moi si je me trompe StringEntity est utilisé pour transmettre les données,les en-Têtes comme les Accepter,de type de Contenu pour le Serveur.
//1. create HttpClient
HttpClient httpclient = new DefaultHttpClient();
//2. make POST request to the given URL
HttpPost httpPost = new HttpPost(url);
String json = "";
//3. build jsonObject
JSONObject jsonObject = new JSONObject();
jsonObject.accumulate("name", person.getName());
jsonObject.accumulate("country", person.getCountry());
jsonObject.accumulate("twitter", person.getTwitter());
//4. convert JSONObject to JSON to String
json = jsonObject.toString();
//** Alternative way to convert Person object to JSON string usin Jackson Lib
//ObjectMapper mapper = new ObjectMapper();
//json = mapper.writeValueAsString(person);
//5. set json to StringEntity
StringEntity se = new StringEntity(json);
//6. set httpPost Entity
httpPost.setEntity(se);
//7. Set some headers to inform server about the type of the content
httpPost.setHeader("Accept", "application/json");
httpPost.setHeader("Content-type", "application/json");
//8. Execute POST request to the given URL
HttpResponse httpResponse = httpclient.execute(httpPost);
//9. receive response as inputStream
inputStream = httpResponse.getEntity().getContent();
.
.
.
et comment puis-je obtenir les données dans le servlet/jsp ? Dois-je utiliser getStream() ou de la demande.getParameter()
Aller à travers ce aussi bien hc.apache.org/httpcomponents-core-ga/httpcore/apidocs/org/...
OriginalL'auteur LMK | 2014-03-05
Vous devez vous connecter pour publier un commentaire.
Une entité dont le contenu est récupéré à partir d'une chaîne.
StringEntity sont les données brutes que vous envoyer la demande.
Serveur de communiquer en utilisant JSON, chaîne JSON peut être envoyé par la StringEntity et le serveur peuvent l'obtenir dans le corps de la requête, de l'analyser et de générer la réponse appropriée.
nous avons mis tous nos unicode style,un type de contenu dans cette seule
Pour plus d'aide u peut prendre cette référence
http://developer.android.com/reference/org/apache/http/entity/StringEntity.html
Selon vos besoins-je modifier cela pour la méthode post
ce que u veux faire mec
comme tu veux obtenir la réponse du serveur au travers d'une API
comme je suis en envoyant,nom de pays, et twitter en json(à partir d'android) dans le StringEntity, maintenant dans le Serverside , comment puis-je obtenir les données(nom,pays,twitter), veuillez consulter le code au 3ème point
servlet a doPost(...demande ...réponse) de la méthode. En cas de réception de données de texte vous pouvez créer un BufferedReader de demande.getReader() à l'intérieur de cette méthode. Puis utiliser tout en boucle et readLine(), etc.
OriginalL'auteur Bhanu Sharma
StringEntity
sont les données brutes que vous envoyer la demande.La plupart du serveur de communiquer en utilisant JSON, chaîne JSON peut être envoyé par la StringEntity et le serveur peuvent l'obtenir dans le corps de la requête, de l'analyser et de générer la réponse appropriée.
Accepter,Content-type, etc. sont envoyés comme en-tête de la requête, mais
StringEntity
est le contenu.En-tête n'est pas passée dans
StringEntity
.un upvote pour réponse convaincante ...mon doute est ensuite pourquoi il est setContentType dans stringEntity.on peut simplement définir le type de contenu de la requête http droit ! pouvez vous de bien vouloir m'expliquer ?
OriginalL'auteur vipul mittal
J'ai eu le même problème je l'ai résolu en 3 Étapes avec Jackson dans Netbeans/Glashfish btw.
1)Exigences :
certains Pots que j'ai utilisé :
Si j'ai raté tout le pot au-dessus , vous pouvez télécharger à partir de Maven ici http://mvnrepository.com/artifact/com.fasterxml.jackson.core
2)Exemple: la Classe Java vous permet d'envoyer votre message.
Tout d'abord ,Convertir avec Jackson, l'Entité de l'Utilisateur en Json, puis l'envoyer à votre Reste de la Classe.
3)Exemple : Java Reste de la Classe à laquelle vous souhaitez recevoir l'Entité JPA/Hibernate .
Ici, avec votre MediaType.APPLICATION_JSON) vous recevez de l'Entité de cette façon :
Quelques conseils : Si vous avez un problème avec l'exécution de la web après l'utilisation de ce code peut être à cause de la
@Consumes in XML
... vous devez le définir comme@Consumes(MediaType.APPLICATION_JSON)
OriginalL'auteur diego matos - keke