我已经看了好几个答案,我遗漏了一些东西。是否有办法在改装前查看数据并进行处理?
这是密码
extends Activity implements Callback<List<MemberPOJO>> {
@Inject
MembersInterface memberInterfaceService;
@Override
public void onFailure(Exception ex) {
setProgressBarIndeterminateVisibility(false);
String retrofitError = "Error: " + ex.getMessage();
Log.e("LoadActivity", retrofitError);
}
@Override
public void onSuccess(List<MemberPOJO> result) {
ArrayList<String> strings = new ArrayList<String>(result.size());
Log.e("LoadActivity", "MemberPOJO:" + result);
}
...
public void getMemberHostData() {
MemberLoader loader = new MemberLoader(this, memberInterfaceService);
RetrofitLoaderManager.init(getLoaderManager(), 0, loader, this);
}
static class MemberLoader extends RetrofitLoader<List<MemberPOJO>, MembersInterface> {
public MemberLoader(Context context, MembersInterface service) {
super(context, service);
}
RestAdapter.Builder builder= new RestAdapter.Builder()
.setRequestInterceptor(new RequestInterceptor() {
@Override
public void intercept(RequestFacade request) {
request.addHeader("Accept", "application/json;versions=1");
request.addHeader("authorization",getAuthorization(getContext()));
}
});
@Override
public List<MemberPOJO> call(MembersInterface service) {
return service.listOfMemebers();
}
}
如果您有StringConverter
和StringTypeOutput,您可以拉字符串。这将提供纯字符串,并且不会反序列化任何内容。当然,您可以尝试在frombody()
方法中验证JSON是否有效,如果它有效,则继续反序列化(将其扩展到GsonConverter
),否则只需获取响应
public class StringConverter implements Converter {
@Override
public Object fromBody(TypedInput arg0, Type arg1)
throws ConversionException {
return getStringFromInputStream(arg0.in());
}
@Override
public TypedOutput toBody(Object arg0) {
String string = (String) arg0;
return new StringTypedOutput(string.getBytes(Charset.forName(HTTP.UTF_8)));
}
public static String getStringFromInputStream(InputStream is) {
BufferedReader br = null;
StringBuilder sb = new StringBuilder();
String line;
try {
br = new BufferedReader(new InputStreamReader(is));
while ((line = br.readLine()) != null) {
sb.append(line);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
//close the stream if needed.
}
return sb.toString();
}
}
我正在使用Retrofit和RxJava库并尝试解析此url: 我的代码如下。 APIInterface.java 主要活动。Java语言 我的模型课如下 大学生Java语言 我正在 D/错误:java。lang.IllegalStateException:应为BEGIN\u数组,但在日志的第1行第2列路径$处为BEGIN\u对象 我到处都在搜索这个错误,但找不到关于RxJava和改型的任何信息。
从Android改型读取JSON字符串时出现问题。
我有一个API,为了获取数据,我必须发送一个JSON参数。这是必须在中发送才能获取数据的JSON。 它在postman中工作,但在Android中,我有以下错误: 我想这是我的模型中的一个问题,但我无法修复它。 我的型号: 还有两种型号用于排序和筛选。我使用改装 我使用构造函数设置SendParametersGetData(在本例中,仅设置了视图名和参数),并将其作为输入提供给getMembers
应为BEGIN\u对象,但在第1行第1列为字符串请帮助我,我遇到此错误 我的列表提供了从解析的json创建对象的类。Java语言 我的JSON: 使用GSON解析JSON的MainActivity代码。。。。。 错误:应为BEGIN\u对象,但在第1行第1列为字符串
我试图只获取字符串请求,但它的给定错误如下 我的API输出如下: 响应代码:
我找到了一些解决方案,但我真的不知道如何开始。 这是我的密码。 接口 主要活动