in src/AlibabaCloud.OSS.V2/Extensions/UriExtensions.cs [53:78]
public static IDictionary<string, string> GetQueryParameters(this Uri uri)
{
var parameters = new Dictionary<string, string>();
var query = uri.Query;
if (!string.IsNullOrEmpty(query))
{
if (query.StartsWith("?", true, CultureInfo.InvariantCulture))
{
query = query.Substring(1);
}
foreach (var param in query.Split(new char[] { '&' }, StringSplitOptions.RemoveEmptyEntries))
{
var parts = param.Split(new char[] { '=' }, 2);
var name = parts[0].UrlDecode();
if (parts.Length == 1)
{
parameters.Add(name, "");
}
else
{
parameters.Add(name, parts[1].UrlDecode());
}
}
}
return parameters;
}