开发者社区> 问答> 正文

403错误SignatureDoesNotMatch

<DIV id=read_tpc mb10?>FileStream theFileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read);
            WebClient theWebClient = new WebClient();
            string GMTime = DateTime.Now.ToUniversalTime().ToString("r");
            MD5CryptoServiceProvider theMD5Hash = new MD5CryptoServiceProvider();
            byte[] hashDatas;
            hashDatas = theMD5Hash.ComputeHash(new byte[( int )theFileStream.Length]);
            string contentMD5 = Convert.ToBase64String(hashDatas);
            // HMACSHA1 theHMACSHA1 = new HMACSHA1();
            KeyedHashAlgorithm theHMACSHA1 = KeyedHashAlgorithm.Create("HmacSHA1");
            //  KeyedHashAlgorithm theHMACSHA1 = KeyedHashAlgorithm.Create("1".ToUpperInvariant());
            theHMACSHA1.Key = Encoding.UTF8.GetBytes("AWXbSJ07yjX0f278Hgarw2f3Z6Q=".ToCharArray());
            string headerStr = "PUT\n"   contentMD5   "\n"   contentType   "\n"
                 GMTime   "\n"   bucket   "/"   fileName;
            byte[] rstRes = theHMACSHA1.ComputeHash(Encoding.UTF8.GetBytes(headerStr.ToCharArray()));
            string strSig = Convert.ToBase64String(rstRes);
            theWebClient.Headers.Add(HttpRequestHeader.Authorization, "OSS ia1lncawwinvh2vu2xjkvmdg:"   strSig);
            theWebClient.Headers.Add(HttpRequestHeader.ContentMd5, contentMD5);
            theWebClient.Headers.Add(HttpRequestHeader.ContentType, contentType);
            theWebClient.Headers.Add("X-OSS-Date", GMTime);
            try
            {
                byte[] ret = theWebClient.UploadFile(" http冒号//storage.aliyun.com/"   bucket   "/"   fileName, "PUT", filePath);      
          string strMessage = Encoding.ASCII.GetString(ret);
                return strMessage;
            }
            catch (WebException e)
            {
                Stream stream = e.Response.GetResponseStream();
                StreamReader reader = new StreamReader(stream);
                return reader.ReadToEnd();
            }
帮忙看下。

展开
收起
flxa888 2012-08-21 15:21:28 11692 0
1 条回答
写回答
取消 提交回答
  • 楼主,提工单吧
    2012-08-21 17:17:52
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载