将cookie添加到客户端请求OkHttp

迈克尔·A

因此,我开始使用Okhttp 3,网络上的大多数示例都在谈论旧版本

我需要向OkHttp客户端请求添加一个cookie,如何使用OkHttp 3来完成?

就我而言,我只是想将其静态添加到客户端调用中,而不从服务器接收它

都铎·卢卡(Tudor Luca)

有两种方法可以执行此操作:

OkHttpClient client = new OkHttpClient().newBuilder()
                .cookieJar(new CookieJar() {
                    @Override
                    public void saveFromResponse(HttpUrl url, List<Cookie> cookies) {
                    }

                    @Override
                    public List<Cookie> loadForRequest(HttpUrl url) {
                        final ArrayList<Cookie> oneCookie = new ArrayList<>(1);
                        oneCookie.add(createNonPersistentCookie());
                        return oneCookie;
                    }
                })
                .build();
...

public static Cookie createNonPersistentCookie() {
        return new Cookie.Builder()
                .domain("publicobject.com")
                .path("/")
                .name("cookie-name")
                .value("cookie-value")
                .httpOnly()
                .secure()
                .build();
    }

或简单地

OkHttpClient client = new OkHttpClient().newBuilder()
        .addInterceptor(new Interceptor() {
            @Override
            public Response intercept(Chain chain) throws IOException {
                final Request original = chain.request();

                final Request authorized = original.newBuilder()
                        .addHeader("Cookie", "cookie-name=cookie-value")
                        .build();

                return chain.proceed(authorized);
            }
        })
        .build();

我觉得第二个建议就是您所需要的。

您可以在此处找到一个有效的示例。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

HL7 HAPI-FHIR将cookie添加到客户端请求

将OkHttp自定义拦截器添加到Feign客户端

通过HttpListenerResponse将多个cookie添加到客户端Web浏览器

如何将请求标头添加到基于Tyrus注释的客户端

如何设置HAProxy将访问令牌添加到客户端请求

将标题添加到Rabbitmq C客户端

将数据从客户端添加到Apollo?

将Google API客户端添加到Codeigniter

如何在Spring Boot中将SAML令牌添加到CXF客户端请求

将自定义标头添加到apollo客户端轮询请求

客户端证书未添加到请求中(证书验证)

如何将客户端ID添加到Java的Google Drive客户端API

简单的OData客户端-如何将代理设置添加到OData客户端

将客户端验证失败添加到ASP.NET MVC ModelState

将客户端证书添加到Spring Boot应用程序

无法使用netTcpBinding将WCF服务引用添加到客户端项目

如何将 luster 文件系统客户端添加到 BlueData 容器?

将多个客户端添加到Spring OAuth2 Auth Server

将重定向URI添加到自动生成的Google OAuth 2.0客户端ID

GWT-将外部Java类添加到客户端项目

使用Java将客户端角色添加到Keycloak用户

将客户端证书添加到.net核心Httpclient

客户端将图像添加到WordPress标头中,并且未正确对齐

以编程方式将 Databricks spark-csv 添加到 Spark 1.6.2 客户端

将Google云客户端库添加到Play 2.5时获取ChannelException

通过kendo网格中的客户端模板将CSS添加到单元格

如何将客户端脚本添加到Nuxt.js?

将本地标头添加到Stomp客户端

熊猫客户端表 >> 将边添加到节点列和增量时间