mcpField
F
flutter-networking

flutter-networking

github.com/thienqo开发1577 次安装今天更新
代码仓库

关于 flutter-networking

面向 Flutter 开发者的网络处理技能,指导将传输细节限制在服务边界,并向应用其他部分提供领域结果。涵盖 HTTP、故障处理、缓存、分页与验证。

主要功能

  1. 01规范 HTTP 客户端与配置
  2. 02防御式解码并区分故障类型
  3. 03在边界映射领域模型
  4. 04安全控制重试与凭据刷新
  5. 05定义分页与缓存行为
  6. 06用模拟传输验证网络场景

适用场景

  1. 01为 Flutter 应用接入 HTTP API
  2. 02排查解码、认证或超时问题
  3. 03验证分页、重试与离线行为

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/thienqo/flutter-skills --skill flutter-networking

安装后在 Claude Code 中输入/flutter-networking确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

evals/
cases.json
references/
graphql.md
http-response-evidence.md
realtime-transports.md

详细介绍

Flutter 网络

将传输相关职责保留在服务边界,并向应用的其他部分提供具有领域意义的结果。

选择模式

  • 按照以下规则处理常规 HTTP 请求-响应工作。
  • 对于 GraphQL 操作、生成的模型、规范化缓存、乐观写入或订阅,请阅读 GraphQL 客户端。
  • 对于 WebSocket、SSE、Socket.IO、连接恢复或实时事件传递,请阅读 实时传输。
  • 对于 REST 或 HTTP 响应调试、未记录的字段、解码偏差,或比较 Swagger/OpenAPI 与已部署行为,请阅读 HTTP 响应证据。
  • 对于 GraphQL 订阅,请阅读这两份参考资料。将流竞争或订阅泄漏交由 dart-concurrency 处理,将持久离线队列交由 flutter-persistence 处理,将应用已终止时的提醒交由 flutter-notifications 处理。

检查

检查当前客户端、生成的 API 代码、拦截器、模型生成、身份验证、环境配置和测试。如果 http、Dio、生成的客户端或其他既有方案满足要求,请保留该方案。

规则

  • 集中管理基础 URL、标头、超时和环境选择,不要提交密钥。
  • 防御性地解码不受信任的响应和消息,并区分传输、协议、解码、身份验证和领域故障。
  • 在明确的边界将线上模型映射为领域模型。
  • 仅当操作和协议允许安全恢复时才重试或重新连接;限制退避、队列和取消操作。
  • 通过一条协调的路径刷新凭据,避免请求风暴。
  • 明确分页标识、排序、重复项处理、终止条件和刷新行为。
  • 有意识地制定缓存策略;不要默默将过期数据作为新鲜数据返回。
  • 避免记录令牌、个人数据或完整的敏感负载。
  • 将已记录的架构、文档示例、受控固定样本和观察到的服务端响应作为不同证据。不要将单个观察到的负载描述为完整契约,也不要将模拟结果作为已部署行为的证明。

验证

使用确定性的伪服务端或模拟传输,覆盖成功、格式错误的数据、超时、取消、未授权后的凭据刷新、重试耗尽、分页边界、重新连接与恢复行为,以及离线行为。仅当凭据和环境明确属于范围内时,才针对真实服务运行集成测试。分别报告执行环境和数据来源。

来源

评论

支持 Markdown