搜索插件、代码仓与 APP 分类

插件详情v1.5.0

sockjs_client_wrapper

一个 Dart 封装的 `sockjs-client` JS 库。

Web
近 30 天下载
2.9万
喜欢数
0
Pub 分数
120

安装插件

flutter pub add sockjs_client_wrapper

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

一个 Dart 包装器,用于 `sockjs-client` JavaScript 库,可在 Flutter Web 应用程序中实现类似 WebSocket 的通信。它提供了一个简单的接口,用于建立和管理与 SockJS 服务器的连接,支持通过多种传输方法(包括 WebSocket、长轮询等)进行实时数据交换。该包专为 Web 平台设计,并可无缝集成到 Flutter Web 项目中。它抽象了底层细节,使处理连接打开、消息接收和错误等事件变得更加简单。

适合场景

  • 实时聊天应用
  • 实时仪表板更新
  • 基于网络的协作工具
  • 事件驱动的Web界面
  • 服务器发送的通知

主要特点

  • 跨运输兼容性
  • 简单的事件驱动 API
  • 与 Flutter Web 的无缝集成
  • 自动回退到备用传输方式
  • 连接状态管理支持

适合对象

  • Flutter web 开发人员需要实时功能
  • 使用 SockJS 服务器的项目
  • 需要可靠客户端-服务器通信的应用程序
  • 寻求轻量级 WebSocket 替代方案的开发者
  • 浏览器兼容性至关重要的使用场景

使用建议

  • 仅支持网页平台
  • 依赖 JavaScript 互操作
  • 可能需要额外的错误处理来应对网络问题
  • 仅限SockJS服务器端点
  • 不适用于移动或桌面应用程序

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

SockJS Client Wrapper

A Dart wrapper around the SockJS Client. Uses the js Dart package to interop with the JS lib.

Usage

Include the SockJS library in your app's index.html prior to the main Dart/JS script:

<!DOCTYPE html>
<html>
  <head> ... </head>
  <body>
    <!-- For local dev/debugging, use the unminified version: -->
    <script src="/packages/sockjs_client_wrapper/sockjs.js"></script>

    <!-- In production, use the minified version:  -->
    <script src="/packages/sockjs_client_wrapper/sockjs_prod.js"></script>
  </body>
</html>

Import package:sockjs_client_wrapper/sockjs_client_wrapper.dart and create a SockJSClient instance that will connect to a SockJS server:

import 'package:sockjs_client_wrapper/sockjs_client_wrapper.dart';

Future<Null> main() async {
  final client = new SockJSClient(Uri.parse('ws://localhost:9000/echo'));
  await client.onOpen.first;
  client.send('Hello!');
  ...
}

Development

Install dependencies
$ npm install
$ dart pub get
Run the example
$ dart run dart_dev serve
Run tests
$ dart run dart_dev test

所属分类

依赖

依赖清单 2 项

  • js^0.6.1
  • w_common>=2.0.0 <5.0.0

源码仓库

使用此插件的项目