繁体   English   中英

如何从服务器获取 session cookie 并将其设置到 api header 中?

[英]how to get session cookie from server and set it into the api header?

在我的 api 请求中有 cookie header ,每次我必须从 postman 复制此 cookie 并粘贴到我的代码中以使其工作。 如何在我的应用程序中生成 cookie 并在 cookie header 中给出该值?

这是我的登录代码:

OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM)
  .addFormDataPart("username","zee@earthonetechno.com")
  .addFormDataPart("password","E1234567")
  .build();
Request request = new Request.Builder()
  .url("192.168.1.51/auth/login")
  .method("POST", body)
  .addHeader("User-Agent", "Koala Admin")
  .addHeader("Content-Type", "application/json")
  .addHeader("Cookie", "session=3e3710cb-9b41-47ea-ab1b-a1e1801e188b")
  .build();
Response response = client.newCall(request).execute();

我想把 cookie 放在addHeader("Cookie", "session=3e3710cb-9b41-47ea-ab1b-a1e1801e188b")

我正在 android 工作室开发

我找到了解决方案

只需在登录部分中包含这些行即可获取 cookie

Headers allHeaders = response.headers();
headerValue = allHeaders.get("Set-Cookie");

并将此headerValue用于后续 api 调用

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM