opt: inappwebview cookie

This commit is contained in:
bggRGjQaUbCoE
2024-10-13 22:07:15 +08:00
parent f701ce1236
commit 4ca81979e7
2 changed files with 14 additions and 0 deletions

View File

@@ -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');
}

View File

@@ -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);