android - OKhttp PUT 示例

标签 android retrofit okhttp android-networking androidhttpclient

我的要求是使用 PUT,向服务器发送标题和正文,服务器将更新数据库中的内容。

我刚刚读到 okHttp documentation我试图使用他们的 POST 示例,但它不适用于我的用例 (我认为这可能是因为服务器要求我使用 PUT而不是 POST)

这是我使用 POST 的方法:

 public void postRequestWithHeaderAndBody(String url, String header, String jsonBody) {


        MediaType JSON = MediaType.parse("application/json; charset=utf-8");
        RequestBody body = RequestBody.create(JSON, jsonBody);

        OkHttpClient client = new OkHttpClient();

        Request request = new Request.Builder()
                .url(url)
                .post(body)
                .addHeader("Authorization", header)
                .build();

        makeCall(client, request);
    }

我曾尝试使用 PUT 搜索 okHttp 示例,但没有成功,如果我需要使用 PUT 方法,是否有使用 okHttp 的方法?

我正在使用 okhttp:2.4.0(以防万一),感谢您的帮助!

最佳答案

.put

改变你的 .post
public void putRequestWithHeaderAndBody(String url, String header, String jsonBody) {


        MediaType JSON = MediaType.parse("application/json; charset=utf-8");
        RequestBody body = RequestBody.create(JSON, jsonBody);

        OkHttpClient client = new OkHttpClient();

        Request request = new Request.Builder()
                .url(url)
                .put(body) //PUT
                .addHeader("Authorization", header)
                .build();

        makeCall(client, request);
    }

关于android - OKhttp PUT 示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34886172/

相关文章:

java - 自动生成改造类型

java - 改造获取位图

android - okhttp:如何处理来自服务器的未请求/意外 100(继续)响应?

Java HttpServlet 无法从客户端使用 OKHttp 发出的 POST 请求接收任何参数

android - 设置相机预览缓冲区大小

android - 地理编码器返回长度为零的地址

android - 如何从屏幕外向下滑动 Logo ?

android - 我应该扩展 Binder 类还是使用 Messenger?

java - 我是否使用改造正确提交了此 POST 正文?

java - Retrofit2 响应是错误的请求,而 OkHttp 工作正常