token的生成和上传 (七牛 安卓版)
2016-11-11 15:39
155 查看
try { // 1 构造上传策略 JSONObject _json = new JSONObject(); long _dataline = System.currentTimeMillis() / 1000 + 3600; _json.put("deadline", _dataline);// 有效时间为一个小时 _json.put("scope", "kymobile"); String _encodedPutPolicy = UrlSafeBase64.encodeToString(_json .toString().getBytes()); byte[] _sign = HmacSHA1Encrypt(_encodedPutPolicy, ConfigConstants.QINIU_SECRETKEY); String _encodedSign = UrlSafeBase64.encodeToString(_sign); String _uploadToken = ConfigConstants.QINIU_ACCESSKEY + ':' + _encodedSign + ':' + _encodedPutPolicy; UploadManager uploadManager = new UploadManager(); uploadManager.put(file, null, _uploadToken, new UpCompletionHandler() { @Override public void complete(String key, ResponseInfo info, JSONObject response) { KLog.d(info.toString()); } }, null); } catch (Exception e) { e.printStackTrace(); }
/** * 使用 HMAC-SHA1 签名方法对encryptText进行签名 * * @param encryptText * 被签名的字符串 * @param encryptKey * 密钥 * @return * @throws Exception */ public static byte[] HmacSHA1Encrypt(String encryptText, String encryptKey) throws Exception { byte[] data = encryptKey.getBytes(ENCODING); // 根据给定的字节数组构造一个密钥,第二参数指定一个密钥算法的名称 SecretKey secretKey = new SecretKeySpec(data, MAC_NAME); // 生成一个指定 Mac 算法 的 Mac 对象 Mac mac = Mac.getInstance(MAC_NAME); // 用给定密钥初始化 Mac 对象 mac.init(secretKey); byte[] text = encryptText.getBytes(ENCODING); // 完成 Mac 操作 return mac.doFinal(text); }
相关文章推荐
- 七牛java-sdk生成token。
- 七牛生成token链接
- 七牛php sdk 生成上传凭证时出现 undefined function Qiniu_SetKeys()
- Linux---生成上传Token以及上传的脚本
- 将 vue 生成的 js 上传到七牛的实例
- 七牛生成token链接
- 七牛图片下载之Token生成
- 七牛上传图片(前台JS+后台C#API获取token)
- 七牛获取Token,SDk,上传
- 关于七牛私有音视频资源播放显示401,但是token生成正确的解决办法。
- 七牛上传ipa后自动生成plist文件
- 生成二维码并直接上传到七牛上
- 在ASP.NET中上传图片并生成缩略图的C#代码
- 图片上传的功能简介及web.config设置(自动生成所略图)
- 上传图片文件,生成缩略图,并写上版权信息
- 服务器认证发送邮件 上传图片并生成略缩图
- 用ASP.NET上传图片并生成可带版权信息的缩略图
- 上传图片文件,生成缩略图,并写上版权信息
- JSP上传图片并生成缩略图
- 图片上传自动生成缩略图VB组件!