je dois sérialisation mes cours à ce format à envoyer au serveur sur une requête POST:La sérialisation GSon échappe à mes clés, pourquoi?
{
"user": {
"id": "myId",
"token": "myToken"
}
}
mais quand je visite le résultat du serveur de la bibliothèque GSOn conserve échapper les clés et le serveur tombe en panne depuis le JSON y arrive malformé. Voici la réponse du serveur:
Parameters: {"user"=>"{\"id\":\"myId\",\"token\":\"myToken\"}"}
Et voici comment je sérialisation le code:
public class UserTest {
@SerializedName("user")
public UserDataTest user;
}
public class UserDataTest {
UserDataTest(){};
@SerializedName("id")
public String id;
@SerializedName("token")
public String token;
}
et je teste comme ceci:
UserTest newUser = new UserTest();
UserDataTest tmp = new UserDataTest();
tmp.id = "myId";
tmp.token = "myToken";
newUser.user = tmp;
Gson gson = new Gson();
String json = gson.toJson(newUser);
JSONObject params = new JSONObject();
params.put("user", json);
// now I do a POST to the server
Quelqu'un peut-il repérer la problème? THX!
Peut-être la cl ass doit mettre en œuvre sérialisable? La classe publique UserTest implémente Serializable { – RicardoVallejo
non, la séralisation n'est pas correcte ... –