dart-sdk icon indicating copy to clipboard operation
dart-sdk copied to clipboard

KS-61 修复Windows/Web平台的不兼容报错

Open zhangzqs opened this issue 11 months ago • 0 comments

分析:

  • 这两个问题实际上都是生成User-Agent中的逻辑出现了问题
  • windows平台上是由于UA包含了中文,而http header中出现中文导致了报错
  • web平台上是由于新引入的库sysinfo2不支持web平台

解决方案:

  • 引入platform_info库,加入平台判定逻辑,web平台不使用SysInfo2生成UA
  • 对整个platform_info和SysInfo2库添加异常处理,不支持的平台默认降级为QiniuDart/vx (Unknow
  • 对最终生成的UA字符串仅保留ascii编码字符,其余字符均移除,防止windows平台的报错

额外改动:

  • 使用mixin,新版dart的一些语法特性,重构example的代码
  • 优化Example的用户交互逻辑
  • 补充windows和web平台代码

zhangzqs avatar Dec 25 '24 08:12 zhangzqs