我webview_flutter: ^1.0.7
用来在我的应用程序上显示网页:
WebView(
initialMediaPlaybackPolicy: AutoMediaPlaybackPolicy.always_allow,
javascriptMode: JavascriptMode.unrestricted,
onWebViewCreated: (webViewController) async {
_controller.complete(webViewController);
在 initState 方法中,我有以下代码:
@override
void initState() {
super.initState();
cookieManagerr.clearCookies();
_controller.future.then((controller) async {
wvc = controller;
// wvc.evaluateJavascript('document.cookie = "SESSION-Test=token";');
Map<String, String> header = {'Cookie': 'ASP.NET_SessionId=222'};
wvc.loadUrl(
'${widget.url}?BranchName=&latitude=${latitude}&longitude=${longitude}',
headers: header,
);
});
}
但运行后没有任何内容添加到标题中。
如果我将代码更改为:
WebView(
initialMediaPlaybackPolicy:
AutoMediaPlaybackPolicy.always_allow,
initialUrl:
'${widget.url}?BranchName=&latitude=${latitude}&longitude=${longitude}',
javascriptMode: JavascriptMode.unrestricted,
onWebViewCreated: (webViewController) async {
webViewController.evaluateJavascript(
'document.cookie = "SESSION-Test=token";');
我收到了这个错误:
I/chromium( 6239): [INFO:CONSOLE(1)] "Uncaught SecurityError: Failed to set the 'cookie' property on 'Document': Access is denied for this document.", source: (1)
D/EGL_emulation( 6239): eglMakeCurrent: 0xd2aea420: ver 2 0 (tinfo 0xb48e41f0)
I/chromium( 6239): [INFO:CONSOLE(17932)] "You are using OSRM's demo server. Please note that it is **NOT SUITABLE FOR PRODUCTION USE**.
如何设置适用于 ios 和 android 的 cookie?