相关疑难解决方法(0)

如何在不使用GSON或android中的任何其他库的情况下使用retrofit获取响应

我想从以下Api得到回应:

https://api.github.com/users/username

但我不知道如何获得响应,String以便我可以使用String解析并得到JSONObject.

使用的改装版本:

改造:2.0.0-β1

我一直试过这个:

public interface GitHubService {
        @GET("/users/{user}")
        public String listRepos(@Path("user") String user,Callback<String> callback);
    }
Run Code Online (Sandbox Code Playgroud)

检索:

GitHubService service = retrofit.create(GitHubService.class);
        service.listRepos("username", new Callback<String>() {
            @Override
            public void onResponse(Response response) {
                System.out.println(response.toString());
            }

            @Override
            public void onFailure(Throwable t) {

            }
        });
Run Code Online (Sandbox Code Playgroud)

例外:

Caused by: java.lang.IllegalArgumentException: Could not locate call adapter for class java.lang.String. Tried:
    * retrofit.ExecutorCallAdapterFactory
            at retrofit.Utils.resolveCallAdapter(Utils.java:67)
            at retrofit.MethodHandler.createCallAdapter(MethodHandler.java:49)
Run Code Online (Sandbox Code Playgroud)

任何帮助将非常感激.

parsing android json retrofit

98
推荐指数
1
解决办法
9万
查看次数

改造回调获得响应体

我正在测试Retrofit与Volley进行比较,我正在努力从我的请求中获得响应.例如,我做这样的事情:

RestAdapter restAdapter = new RestAdapter.Builder()
            .setEndpoint("http://localhost:8080")
            .build();

MyService service = restAdapter.create(MyService.class);
service.getToto("toto", new Callback<Toto>() {

        @Override
        public void success(Toto toto, Response response) {
            // Try to get response body
            BufferedReader reader = null;
            StringBuilder sb = new StringBuilder();
            try {
                reader = new BufferedReader(
                    new InputStreamReader(response.getBody().in()));
                String line;
                try {
                    while ((line = reader.readLine()) != null) {
                        sb.append(line);
                    }
                } catch (IOException e) {
                    e.printStackTrace();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
            String result = sb.toString();
        }

        @Override …
Run Code Online (Sandbox Code Playgroud)

android retrofit

45
推荐指数
3
解决办法
7万
查看次数

改造.Android系统.我可以在没有解析的情况下将json对象下载到String吗?

我可以将json对象下载为String而无需在Android设备上使用Retrofit进行解析吗?

当我尝试直接接近时

@GET("/api.php?action=bundle")
public void getWholeScheduleString(Callback<String> response);
Run Code Online (Sandbox Code Playgroud)

我收到了错误:

"com.google.gson.JsonSyntaxException: java.lang.IllegalStateException:
Expected a string but was BEGIN_OBJECT at line 1 column 2 path $"
Run Code Online (Sandbox Code Playgroud)

android json retrofit

3
推荐指数
2
解决办法
6850
查看次数

标签 统计

android ×3

retrofit ×3

json ×2

parsing ×1