2016-11-21 28 views
0

我有一个API,让结果是这样的:得到改造响应作为字符串

如果好:OK ID:1234567

不行:2 <br>(Please Type something)

现在我想用收到这在我的Android应用翻新,我能想到的一种方法是在String获得响应,并手动检查错误或不错误的情况下,但我找不到更好的方式来做到这一点:

这些SO问题没有解释该解决方案足以复制: Q1Q2Q3

回答

3

有两种方式:

  • 开箱改造的使用OkHttp的ResponseBody类型支持。 ResponseBody基本上是“只是字节”的抽象,并且有一个名为string()的方法,它将使用String

  • 您可以添加converters-scalars artifact并将ScalarsConverterFactory添加到您的实例,该实例允许使用String作为您的响应类型。

+0

第一种方法对我有意义,我从它的一个问题得到它的代码示例感谢解释 –

0

这是第一种方式的例子。也许这对一些人会有所帮助。

API接口:

public interface APIService { 
@GET("api/get_info") 
    Call<ResponseBody> getInfo();//import okhttp3.ResponseBody; 
} 

API调用:

// Retrofit service creation code skipped here 
String json = retrofitService().getInfo().execute().body().string(); 

它为我工作。我使用改进:2.1.0。