我正在做android,寻找一种方法来做一个超级基本的http GET/POST请求.我一直收到错误:
java.lang.IllegalArgumentException: Unable to create converter for class java.lang.String
Run Code Online (Sandbox Code Playgroud)
网络服务:
public interface WebService {
@GET("/projects")
Call<String> jquery();
}
Run Code Online (Sandbox Code Playgroud)
然后在我的java中:
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();
Run Code Online (Sandbox Code Playgroud)
我实际上只是尝试使用GET请求查询jquery.org/projects并返回它响应的String.怎么了?
如果我尝试实现一个自定义转换器(我在网上找到了一些例子),它抱怨我没有实现抽象方法convert(F),这些都没有.
谢谢.
在改造2之前,有一种集中处理错误的方法 -
new retrofit.RestAdapter.Builder()
.setEndpoint(apiUrl)
.setLogLevel(retrofit.RestAdapter.LogLevel.FULL)
.setErrorHandler(new CustomErrorHandler(ctx))
Run Code Online (Sandbox Code Playgroud)
但是现在在Retrofit 2中,RestAdapter已经被重命名为,Retrofit而且没有setErrorHandler().有没有办法使用集中式错误处理Retrofit.Builder()?