gpt4 book ai didi

使用 flutter 的带有自签名证书的 SSL IOWebSocketChannel

转载 作者:IT王子 更新时间:2023-10-29 06:44:06 34 4
gpt4 key购买 nike

任何人都可以帮助我使用自签名证书通过此示例。我需要能够允许我的用户接受自签名证书(如果这是他们正在使用的证书)。

我使用的示例来自:https://flutter.io/cookbook/networking/web-sockets/

如果 ssl 证书有效或未使用 SSL,一切正常。只需要通过自签名的驼峰

class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
final title = 'WebSocket Demo';
Map headers = new Map<String,dynamic>();
headers["XXXXXX"] = "XXXX";
headers["XXXXXX"] = "13";
headers["Origin"] = "XXXXXX";
headers["Authorization"] = "XXXXXX";

return MaterialApp(
title: title,
home: MyHomePage(
title: title,
channel: IOWebSocketChannel.connect('wss://10.1.1.154:443/rest/subscribe',headers: headers),
),
);
}
}

最佳答案

这是一个很好的临时修复!它适用于具有自签名证书的本地 ip。 (请根据您的需要修改badCertificateCallback)

class MyHttpOverrides extends HttpOverrides {
@override
HttpClient createHttpClient(SecurityContext? context) {
return super.createHttpClient(context)
..badCertificateCallback =
(X509Certificate cert, String host, int port) => true; // add your localhost detection logic here if you want
}
}

void main() {
HttpOverrides.global = MyHttpOverrides();
runApp(MaterialApp(home: MyApp()));
}

关于使用 flutter 的带有自签名证书的 SSL IOWebSocketChannel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51562727/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com