Flutter   发布时间:2022-05-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – 如何在flutter上使用cookie发出http请求?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在正确处理cookie的同时向远程服务器发出http请求(例如,存储服务器发送的cookie,并在我发出后续请求时发送这些cookiE).保留任何和所有cookie都很好

对于我正在使用的http请求

static Future<Map> postData(Map data) async {
  http.Response res = await http.post(url,body: data); // post api call
  Map data = JSON.decode(res.body);
  return data;
}

解决方法

这是一个如何获取会话cookie并在后续请求中返回它的示例.您可以轻松地调整它以返回多个cookie.创建一个Session类并通过它来路由所有GET和POST.

class Session {
  Map<String,String> headers = {};

  Future<Map> get(String url) async {
    http.Response response = await http.get(url,headers: headers);
    updateCookie(responsE);
    return json.decode(response.body);
  }

  Future<Map> post(String url,dynamic data) async {
    http.Response response = await http.post(url,body: data,headers: headers);
    updateCookie(responsE);
    return json.decode(response.body);
  }

  void updateCookie(http.Response responsE) {
    String rawCookie = response.headers['set-cookie'];
    if (rawCookie != null) {
      int index = rawCookie.indexOf(';');
      headers['cookie'] =
          (index == -1) ? rawCookie : rawCookie.subString(0,indeX);
    }
  }
}

大佬总结

以上是大佬教程为你收集整理的android – 如何在flutter上使用cookie发出http请求?全部内容,希望文章能够帮你解决android – 如何在flutter上使用cookie发出http请求?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。