Alguém pode me ajudar na lib Retrofit?? Não consigo pegar o response.body();

93 views
Skip to first unread message

Nelson Plínio Martins Lisboa

unread,
Jan 25, 2016, 7:53:11 PM1/25/16
to Android Brasil - Dev
Bom Dia, Tarde, Noite pessoal,
Vim aqui para pedir uma grande ajuda, não estou dando conta de pegar o response do get qe estou fazendo, 
o body esta vindo um json vazio 
Callback<JSONObject> response
response.body(); = { }

e os outros estão vindo todos.
Na foto tem um exemplo que estou tentando dar um get em um json e não esta vindo nada.

Obrigado pela atenção.
Captura de tela de 2016-01-25 22:44:12.png

Rudson Lima

unread,
Jan 25, 2016, 8:09:58 PM1/25/16
to androidb...@googlegroups.com
No lugar de criar um Callback<JSONObject> tenta usar assim Call<ResponseBody>.
Ele vai retornar uma String no seu body e vc pode pegar assim "response.body().string()"
então, vc pega essa string e converte para o JSONObject.

Estou utilizando a versão 2.0.0-beta3

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Rudson Lima ( live-O ) Desenvolvedor Android
Contato +55 85 87050560 - Fortaleza-ce
Social facebook | google+ | linkedin
Message has been deleted

Rudson Lima

unread,
Jan 26, 2016, 9:19:58 AM1/26/16
to androidb...@googlegroups.com
Aparentemente está OK. Da uma revisava no seu service.get();

Não sei se pode ser um problema, mas cuidado com os prints pois é possível ver a url da sua api.



Em 26 de janeiro de 2016 11:10, Nelson Plínio Martins Lisboa <dev12.seu...@gmail.com> escreveu:
Rudson Lima, obrigado pela resposta mais fui tentar e olha oque chegou no response.body();
Olha o meu codigo e me fala se tem algo de errado. Obrigado 

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Nelson Plínio Martins Lisboa

unread,
Jan 26, 2016, 10:46:13 AM1/26/16
to androidb...@googlegroups.com

Nossa e mesmo obrigado por tudo dps vou dar uma revisada

You received this message because you are subscribed to a topic in the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/androidbrasil-dev/ExqiSkNBjnk/unsubscribe.
To unsubscribe from this group and all its topics, send an email to androidbrasil-...@googlegroups.com.

Nelson Plínio Martins Lisboa

unread,
Jan 26, 2016, 12:23:18 PM1/26/16
to Android Brasil - Dev
Solução
String api = "Sua URL";
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(
api)
.addConverterFactory(
GsonConverterFactory.create())
.build();

LoadNoticias loadNoticias = retrofit.create(LoadNoticias.
class);
Call<ResponseBody> loadNoticiasCall = loadNoticias.getNoticias();
loadNoticiasCall.enqueue(
new Callback<ResponseBody>() {
@Override
public void onResponse(Response<ResponseBody> response) {

if (response.body() != null) {
try {
String json = response.body().string();
}
catch (IOException e) {
e.printStackTrace();
}
}
}

@Override
public void onFailure(Throwable t) {
}
});
public interface LoadNoticias{
@GET("/seu.json")
Call<ResponseBody> getNoticias();
}
Reply all
Reply to author
Forward
0 new messages