java.lang.IllegalArgumentException: Unable to create converter for class java.lang.String
public interface WebService {
@GET("/projects")
Call<String> jquery();
}
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("https://jquery.org")
// .addConverterFactory(GsonConverterFactory.create())
.build();
WebService service = retrofit.create(WebService.class);
Call<String> signin = service.jquery();
Toast.makeText(this, signin.toString(), Toast.LENGTH_LONG).show();
如果我尝试实现一个自定义转换器(我在网上找到了一些例子),它会抱怨我没有实现抽象方法convert(F),而这些例子都没有实现。
谢了。
将Retrofit2和ScalarsConverterFactory添加到您的Retrofit.Builder中。
adapterBuilder = new Retrofit.Builder()
.addConverterFactory(ScalarsConverterFactory.create())
.addConverterFactory(GsonConverterFactory.create());
若要使用ScalarsCoverter,请向构建梯度添加以下依赖项
implementation 'com.squareup.retrofit2:converter-scalars:2.9.0'
implementation 'com.squareup.retrofit2:retrofit:2.9.0' //Adding Retrofit2
For API Call use:
Call <String> *****
Android代码:
.enqueue(new Callback<String>() {
@Override
public void onResponse(Call<String> call, Response<String> response) {
Log.i("Response", response.body().toString());
//Toast.makeText()
if (response.isSuccessful()){
if (response.body() != null){
Log.i("onSuccess", response.body().toString());
}else{
Log.i("onEmptyResponse", "Returned empty response");//Toast.makeText(getContext(),"Nothing returned",Toast.LENGTH_LONG).show();
}
}
问题内容: 我正在使用Retrofit1旧样式 现在,我不想获取“ User”类,但是我想要获取String响应。 以前我们使用的是“ Response”,但是在改造2中没有“ Response”, 我如何在不使用任何json解析的情况下从服务器获取字符串响应或全身响应? 问题答案: 建立这个课程 与它一起使用 编辑: 您必须将其定义为 retrofit2不支持回调,因此您必须删除它。要使其异步,
我试图获得字符串值返回API成功。我获得了成功,但我没有在响应中获得所需的值,但当我导航到响应->Body->responseBody时,它会显示该值,但我无法获得该值(请查看屏幕截图以获得详细信息)。
我正在对这个Google Books API URL做出响应 我有一个改装要求:' 和book.java 请求工作正确,我的意思是连接没有错误,并且改型返回的是响应,而不是失败。但我的字符串“title”为空。我怎么才能得到这个。请通过上面的链接检查JSON响应。 更新: 改装呼叫: BookCallback侦听器是我的主要活动:当我检查日志时,有 “成功”“标题%1为空”
我正在尝试对GsonConverterFactory使用Retrofit2,问题是这是我从okhttp: 因此,我得到以下例外: java.lang.IllegalStateException:应为BEGIN_OBJECT,但在第1行第2列为字符串 如何删除特殊字符和回车与改装2?
我在使用Spring RestTemplate时遇到了问题。 现在,我向一个restful服务发送一个PUT请求,该restful服务向我发回重要的信息作为响应。 问题(就像我前面说的)是上面的try/catch没有返回任何响应,但它给了我一个200的响应。 所以现在我问,会有什么问题?
我有两根绳子 在两种情况下,我应该删除