如何使用Okhttpclient创建带有参数的Http删除或放置方法?android okhttpclient

WU *_*fun 6 post android put okhttp

有没有人知道Android如何使用Okhttpclient创建一个带有参数的Http删除或放置方法?

使用java,这是我尝试过的:

CookieJarImpl cookieJar = new CookieJarImpl(new PersistentCookieStore(context));

okHttpClient = new OkHttpClient.Builder()
                .cookieJar(cookieJar)
                .addInterceptor(new LoggerInterceptor("TAG"))
                .connectTimeout(10000L, TimeUnit.MILLISECONDS)
                .readTimeout(10000L, TimeUnit.MILLISECONDS) //????     
                .build();
Run Code Online (Sandbox Code Playgroud)

Bry*_*yan 7

您可以使用HttpUrl该类构建包含查询参数的URL .然后你可以使用一个okhttp3.Request.Buidler()与任一沿post()delete()方法:

HttpUrl url = new HttpUrl.Builder()
            .host(host).addQueryParameter(name, value).build();

Request request = new Request.Builder()
            .url(url).post(RequestBody.create(mediaType, body)).addHeader(type, header).build();

okhttpClient.newCall(request).enqueue(new Callback() {
    ...
});
Run Code Online (Sandbox Code Playgroud)

如果您需要进一步的帮助,可以查看OkHttp wiki食谱.或者您可以使用Square的其他精彩图书库Retrofit,它与OkHttp配对得很好.