android - flutter WebViewController如何添加header
问题描述
在我的应用程序中,我使用了 WebViewController。但我不知道,如何将参数传递给标题。这显示一个错误。如何正确传递参数?请帮忙
class _PostRouteScreenState extends State<PostRouteScreen> {
final Completer<WebViewController> _controller = Completer<WebViewController>();
@override
void initState() {
super.initState();
}
@override
void dispose() {
super.dispose();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: new AppBar(),
body: WebView(
initialUrl: 'https://....../make-route',
headers:{"SB-app": "iphone"},
javascriptMode: JavascriptMode.unrestricted,
onWebViewCreated: (WebViewController webViewController) {
_controller.complete(webViewController);
},
navigationDelegate: (NavigationRequest request) {
print('allowing navigation to $request');
return NavigationDecision.navigate;
},
onPageStarted: (String url) async {
print('Page started loading: $url');
},
onPageFinished: (String url) async {
print('Page finished loading: $url');
},
gestureNavigationEnabled: true,
),
解决方案
尝试省略 initialURL 并使用允许您传递标头的控制器:
body: WebView(
// initialUrl: 'https://....../make-route',
// headers: {"SB-app": "iphone"},
javascriptMode: JavascriptMode.unrestricted,
onWebViewCreated: (WebViewController webViewController) {
_controller.complete(webViewController);
webViewController.loadUrl(
'https://....../make-route',
headers: {"SB-app": "iphone"},
);
},
推荐阅读
- c++ - 在 Visual Studio 2017 上找不到信号量标头
- php - 从 Excel 导入数据库
- flutter-test - 如何模拟flutter通用html包
- javascript - 如何使用数据库将用户 ID 列表转换为用户标签
- ios - 使用 XCTestCases 类中的可访问性标识符访问 NavigationLink - SwiftUI
- gnome - 通过 GUI 设置 GNOME 显示比例究竟修改了什么?
- multipart - 如何通过发布请求和正文参数放心地使用多部分
- networking - 受密码保护的共享
- flutter - 无法在初始化程序中访问实例成员,尝试用不同的表达式替换对实例成员的引用 -alternative?
- mongodb - 连接到 MongoDB Atlas