From 18fd7821560989e8cee630c23518dcfda950f7dd Mon Sep 17 00:00:00 2001 From: joywayer Date: Tue, 23 Jun 2026 21:54:37 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BC=B9=E5=B1=82=20Cookie=20/=20localStorage?= =?UTF-8?q?=20=E6=94=B9=E5=9B=9E=E4=B8=8E=E5=A4=A7=E5=8E=85=E5=85=B1?= =?UTF-8?q?=E4=BA=AB=EF=BC=8C=E5=AF=B9=E9=BD=90=20msext?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit OverlayViewController 之前用 .nonPersistent() 主动隔离弹层 cookie,避免 第三方外链污染游戏会话。但 msext threeView 用 UIWebView 默认与 app 内 其它 WebView 共享 cookie,H5 业务(运营公告 / 充值 / 客服等外链页)依赖 读到大厅登录态。隔离破坏契约。 改回 .default(),与 BridgedWebView(默认即 default)一致,全局共享。 Co-Authored-By: Claude Opus 4.7 --- ylgamehall/Source/WebView/OverlayViewController.swift | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ylgamehall/Source/WebView/OverlayViewController.swift b/ylgamehall/Source/WebView/OverlayViewController.swift index 9da731f..211217d 100644 --- a/ylgamehall/Source/WebView/OverlayViewController.swift +++ b/ylgamehall/Source/WebView/OverlayViewController.swift @@ -70,8 +70,10 @@ public final class OverlayViewController: UIViewController { private func setupWebView() { let config = WKWebViewConfiguration() - // 关键:弹层 Cookie / 缓存隔离,第三方外链不污染大厅 / 子游戏的 H5 会话 - config.websiteDataStore = .nonPersistent() + // 与大厅 / 子游戏共用默认 websiteDataStore,cookie / localStorage 全局共享。 + // 与 msext threeView 行为对齐(UIWebView 时代无法隔离,外链页可读到游戏会话)。 + // 业务上:运营公告 / 充值 / 客服等外链页依赖大厅登录态,必须共享。 + config.websiteDataStore = .default() config.defaultWebpagePreferences.allowsContentJavaScript = true config.preferences.javaScriptCanOpenWindowsAutomatically = false config.allowsInlineMediaPlayback = true