自己写的OSS上传程序被拒绝访问了
回1楼deadbeef的帖子
自己写的sdk,我把OSS设置成了公共读写也是拒绝访问
-------------------------
回3楼xgp的帖子
已经解决了,不断用java的SDK抓包对比改过来的
就是签名的细节错误:1. “OSS”和 accessKeyId 之间有一个空格
2.时间和'/bucket/object'之间,如果不加ossmeta,就只需要一个'\n'
3.有一次错误是说MD5无效,我就把计算签名和header里面的MD5去掉了,然后就成功了,但是不知道为什么会说MD5无效,可以帮忙看看吗?
这是我算MD5的方法
public static String getMd5ByFile(File file) throws IOException, NoSuchAlgorithmException { String value = null; FileInputStream in = new FileInputStream(file); MappedByteBuffer byteBuffer = in.getChannel().map(FileChannel.MapMode.READ_ONLY, 0, file.length()); MessageDigest md5 = MessageDigest.getInstance('MD5'); md5.update(byteBuffer); BigInteger bi = new BigInteger(1, md5.digest()); value = bi.toString(16); in.close(); //return value.toUpperCase(); return value; }
赞0
踩0