【问题标题】:How to connect to a STOMP websocket with Flutter如何使用 Flutter 连接到 STOMP websocket
【发布时间】:2020-12-09 08:53:32
【问题描述】:

我正在尝试使用 Flutter 连接到 stomp WebSocket。 我正在使用 stomp_dart_client 0.3.8 库。 这是我的代码(我遵循了他们 GIT 上的文档):

void onConnectcallback(StompClient client, StompFrame connectFrame) {
  client.subscribe(
      destination: '/notification/app/test',
      headers: {' Auth-Token': Statics.accessToken},
      callback: (  StompFrame connectFrame )  {
        List<dynamic> result = json.decode(connectFrame.body);
        print(connectFrame.body);
        print(result);
        print('it worked');
      }
  );
  print("i think i work");
}


testconnection()  {
  final stompClient= StompClient(config: StompConfig(
    url:' ws://messagerie-rcc.be-idys.com',
    onWebSocketError: (dynamic error) => print(error.toString()),
    onStompError:(dynamic error) => print(error.toString()),
    onConnect: onConnectcallback,
    stompConnectHeaders: {' Auth-Token': Statics.accessToken},
    webSocketConnectHeaders: {' Auth-Token':Statics.accessToken},));
  stompClient.activate();
  print('I think its workinf');
}

然后我调用 testconnection()。 当我调试时它正在跳过:

onConnect: onConnectcallback,

我尝试添加参数并制作它

onConnect: onConnectcallback(client, connectFrame),

我明白了:


The method 'subscribe' was called on null.
Receiver: null
Tried calling: subscribe(callback: Closure: (StompFrame) => Null, destination: "/notification/app/test", headers: _LinkedHashMap len:1)

【问题讨论】:

  • 是否可以使用普通身份验证代替令牌?

标签: flutter stomp


【解决方案1】:

我遇到了同样的问题。

我决定在变量声明中初始化我的 stomp,如下所示:

StompClient stompClient = StompClient(
  config: StompConfig(
    url: 'ws://yourhost',
    onConnect: onConnected,
    stompConnectHeaders: {'Authorization': '$token'},
    webSocketConnectHeaders: {'Authorization': '$token'},
    onWebSocketError: (e) => print(e.toString()),
    onStompError: (d) => print('error stomp'),
    onDisconnect: (f) => print('disconnected'),
  ),
);

So, then afterwards call the activate method. 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-02-25
    • 1970-01-01
    • 1970-01-01
    • 2021-05-29
    • 2015-07-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多