diff --git a/lib/pages/login/controller.dart b/lib/pages/login/controller.dart index 0bc47461..fa502f24 100644 --- a/lib/pages/login/controller.dart +++ b/lib/pages/login/controller.dart @@ -11,6 +11,7 @@ import 'package:PiliPalaX/models/login/index.dart'; import '../../utils/login.dart'; import 'package:hive/hive.dart'; import 'package:webview_cookie_manager/webview_cookie_manager.dart'; +import 'package:flutter_inappwebview/flutter_inappwebview.dart' as web; import '../../http/constants.dart'; import '../../http/init.dart'; @@ -144,6 +145,17 @@ class LoginPageController extends GetxController Request.dio.options.headers['cookie'] = cookieStrings; print(Request.dio.options); await WebviewCookieManager().setCookies(cookies); + for (Cookie item in cookies) { + await web.CookieManager().setCookie( + url: web.WebUri(item.domain ?? ''), + name: item.name, + value: item.value, + path: item.path ?? '', + domain: item.domain, + isSecure: item.secure, + isHttpOnly: item.httpOnly, + ); + } } catch (e) { SmartDialog.showToast('设置登录态失败,$e'); } diff --git a/lib/pages/setting/controller.dart b/lib/pages/setting/controller.dart index f4538e8b..66a756a0 100644 --- a/lib/pages/setting/controller.dart +++ b/lib/pages/setting/controller.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; +import 'package:flutter_inappwebview/flutter_inappwebview.dart'; import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; import 'package:get/get.dart'; import 'package:hive/hive.dart'; @@ -66,6 +67,7 @@ class SettingController extends GetxController { onPressed: () async { // 清空cookie await Request.cookieManager.cookieJar.deleteAll(); + await CookieManager().deleteAllCookies(); Request.dio.options.headers['cookie'] = ''; // 清空本地存储的用户标识 userInfoCache.put('userInfoCache', null);