【问题标题】:Post with Robospice and okHttp使用 Robospice 和 okHttp 发布
【发布时间】:2015-07-27 22:02:03
【问题描述】:

我使用 Robospice 和 okHttp 执行 POST :

public String loadDataFromNetwork() throws Exception {
    uriBuilder = Uri.parse(url).buildUpon();
    uri = new URI(uriBuilder.build().toString());
    tmp = "user=" + user + "&password=" + pwd
    HttpURLConnection connect = new OkUrlFactory(client).open(uri.toURL());
    // Send post request
    connect.setDoOutput(true);
    DataOutputStream wr = new DataOutputStream(connect.getOutputStream());
    wr.writeBytes(tmp);
    wr.flush();
    wr.close();
    // Read the response
    in = connect.getInputStream();
}

有没有更好的发帖方式(使用 Robospice/okHttp)?

NB :我的代码运行良好,只是想知道它是否正确......

【问题讨论】:

    标签: post okhttp robospice


    【解决方案1】:

    问题是,如果我想像这样使用 okHttp POST:

        OkHttpClient client = new OkHttpClient();
    
        Request request = new Request.Builder()
                .url("https://api.github.com/markdown/raw")
                .post(RequestBody.create(MEDIA_TYPE_MARKDOWN, parameters))
                .build();
    
        Response response = client.newCall(request).execute();
        if (!response.isSuccessful()) throw new IOException("Unexpected code " + response);
    
        System.out.println(response.body().string());
    

    对于 Robospice,RequestBody 和 newCall 和 isSuccessful 无法解析!

    我有使用 okHttp post WITH Robospice 的解决方案吗? (我知道如何制作 GET,但不会制作 POST……)

    【讨论】:

    • 对不起!我已经在我的 graddle 中添加了库(编译 'com.squareup.okhttp:okhttp:2.4.0'),现在可以了
    • 没关系,但是当我添加了 okHttp 库时,Robospice GET 不再工作了......所以我的问题仍然存在......
    • 以上任何解决方案
    • 是的,不要再使用 Robospice...改用 RXJava
    • 我已经通过改造实现了 RXJava。但是当我打第一个电话时,它就成功了。在第二次调用时,它会在关闭前一个响应正文时引发错误。如何关闭以前的响应正文
    猜你喜欢
    • 2014-07-20
    • 2021-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-14
    • 2018-09-16
    • 2015-12-27
    相关资源
    最近更新 更多