Flutter 颤振认证WebSocket与信号机后端的通信
我正在使用flatter和dart开发一个移动应用程序。我需要与后端建立websocket连接,该连接使用Asp.net SiganlR实现。后端由其他团队实现,我无法修改/更新它。websocket通信在后端受到保护,我需要提供访问令牌才能访问服务 我正在尝试此代码以建立通信通道:Flutter 颤振认证WebSocket与信号机后端的通信,flutter,websocket,asp.net-core-signalr,Flutter,Websocket,Asp.net Core Signalr,我正在使用flatter和dart开发一个移动应用程序。我需要与后端建立websocket连接,该连接使用Asp.net SiganlR实现。后端由其他团队实现,我无法修改/更新它。websocket通信在后端受到保护,我需要提供访问令牌才能访问服务 我正在尝试此代码以建立通信通道: IOWebSocketChannel _channel = new IOWebSocketChannel.connect('wss://localhost:5000/sinkhub', headers: {
IOWebSocketChannel _channel = new IOWebSocketChannel.connect('wss://localhost:5000/sinkhub', headers: {
'X-TOKEN': 'token'
});
但我无法建立连接,最终出现错误。这是执行上述代码后_channel对象的屏幕截图
在此方面的任何帮助都将不胜感激。更具体地说,如何从Flatter应用程序连接到信号器后端。最重要的一点是,后端是受保护的,我需要发送访问令牌才能访问服务 我正在使用软件包
假设您正在本地存储中存储令牌。因此,创建一个方法来检索它,如下所示
Future<String> getAccessToken() async {
FlutterSecureStorage _storage = FlutterSecureStorage();
return await _storage.read(key: 'token');
}
,你得到解决方案了吗
Future startConnection() async {
connection = HubConnectionBuilder()
.withUrl('https://************/hubs/chatHub',
options: HttpConnectionOptions(
accessTokenFactory: () async =>
await getAccessToken()))
.build();
await connection.start();
}