我如何从标题获取令牌?

时间:2020-05-29 18:49:54

标签: flutter

我通过http授权。发布后,发送带有用户名和密码的JSON正文,在响应中我得到一个Header,Header有一个令牌,它存储在'set_cookie:Authorization = token'中,如何获取并将其写入存储? / p>

1 个答案:

答案 0 :(得分:0)

您可以使用以下代码从登录请求的响应中获取Cookie

HttpClient _httpClient = new HttpClient();
HttpClientRequest request = await _httpClient.postUrl(Uri.parse(url));
request.headers.set('content-type', 'application/json');
request.add(utf8.encode(json.encode(jsonMap)));
HttpClientResponse response = await request.close();
print(response.cookies); // this is a List<Cookie>, you can iterate and find the required cookie

现在,您可以使用shared_preference插件存储cookie,并在以后的所有请求中使用它。

HttpClient client = new HttpClient();
HttpClientRequest clientRequest =
      await client.getUrl(Uri.parse("http: //www.example.com/"));
clientRequest.cookies.add(Cookie("sessionid", "asdasdasqqwd"));

您还可以浏览dio库,并使用AuthInterceptor为您的所有请求添加令牌。