_queryparams包含一个带有特殊字符的SAS令牌,因此上面的URI调用将自动编码特殊字符(即:& - >%26),因此在尝试将Blob上传到Azure时会失败。
有一种方法可以关闭编码吗?这是我能够做到的一种方式:
var uri = Uri(scheme: scheme, host: '$name.blob.$suffix', path: path, queryParameters: _queryParams);
var replacedUri = uri.replace(query: Uri.decodeFull(uri.query ) );