由来
由于七牛云官方netcore版本已经很久没更新,目前也不支持管理凭证的V2版本,以下是在原有的sdk(Qiniu.SDK)基础上做了扩展。
代码
public static string CreateManageTokenV2(this Mac mac, string requestUrl, string method = "POST", string contentType = "application/json", string body = null)
{
var uri = new Uri(requestUrl);
var sb = new StringBuilder();
sb.Append(method.ToUpper());
sb.Append(" ");
sb.Append(uri.PathAndQuery);
sb.Append("\n");
sb.AppendFormat("Host: {0}", uri.Host);
if (!contentType.IsNullOrWhiteSpace())
sb.Append($"\nContent-Type: {contentType}");
sb.Append("\n\n");
if (!body.IsNullOrWhiteSpace())
sb.Append(body);
using var hmac = new HMACSHA1(Encoding.UTF8.GetBytes(mac.SecretKey));
byte[] digest = hmac.ComputeHash(Encoding.UTF8.GetByt