七牛---用JAVA生成各种凭证代码
来源:互联网 发布:java中数组特点 编辑:程序博客网 时间:2024/06/05 04:32
用JAVA生成各种凭证代码
1 上传凭证:
import java.security.InvalidKeyException;import java.security.NoSuchAlgorithmException;import javax.crypto.Mac;import javax.crypto.spec.SecretKeySpec;import com.qiniu.util.StringUtils;import com.qiniu.util.UrlSafeBase64;public class TokenUpload { public static void tokenupload() throws NoSuchAlgorithmException, InvalidKeyException{ String ACCESS_KEY = "AK"; String SECRET_KEY = "SK";// String putpolicy = "{\"scope\":\"javademo\",\"deadline\":1457843866}"; String putpolicy = "{\"scope\":\"thinkox-shang:sdfsdf.jpg\",\"deadline\":1441940419}"; String t3 = UrlSafeBase64.encodeToString(putpolicy); Mac mac = javax.crypto.Mac.getInstance("HmacSHA1"); mac.init(new SecretKeySpec(StringUtils.utf8Bytes(SECRET_KEY),"HmacSHA1")); String t2 = UrlSafeBase64.encodeToString(mac.doFinal(StringUtils.utf8Bytes(t3))); System.out.println(ACCESS_KEY+":"+t2+":"+t3); } public static void main(String args[]) throws InvalidKeyException, NoSuchAlgorithmException{ tokenupload(); }}
2 下载凭证:
import java.security.InvalidKeyException;import java.security.NoSuchAlgorithmException;import javax.crypto.Mac;import javax.crypto.spec.SecretKeySpec;import com.qiniu.util.StringUtils;import com.qiniu.util.UrlSafeBase64;public class TokenDownload { public static void tokendownload() throws NoSuchAlgorithmException, InvalidKeyException{ String ACCESS_KEY = "AK"; String SECRET_KEY = "SK"; String DownloadUrl = "http://7xl4ck.com1.z0.glb.clouddn.com/photo1.jpg?e=1637846514"; Mac mac = javax.crypto.Mac.getInstance("HmacSHA1"); mac.init(new SecretKeySpec(StringUtils.utf8Bytes(SECRET_KEY),"HmacSHA1")); String t2 = UrlSafeBase64.encodeToString(mac.doFinal(StringUtils.utf8Bytes(DownloadUrl))); System.out.println(DownloadUrl+"&token="+ACCESS_KEY+":"+t2); } public static void main(String args[]) throws InvalidKeyException, NoSuchAlgorithmException{ tokendownload(); }}
3 管理凭证:
import java.security.InvalidKeyException;import java.security.NoSuchAlgorithmException;import javax.crypto.Mac;import javax.crypto.spec.SecretKeySpec;import com.qiniu.util.StringUtils;import com.qiniu.util.UrlSafeBase64;public class TokenManage { public static void tokenmanage() throws NoSuchAlgorithmException, InvalidKeyException{ String ACCESS_KEY = "AK"; String SECRET_KEY = "SK"; //删除方法 String signingStr = "/delete/Y3BwZGVtbzpwaG90by0y\n"; //fetch方法 // String signingStr = "/fetch/aHR0cHM6Ly9zY29udGVudC5jZG5pbnN0YWdyYW0uY29tL2hwaG90b3MteGFmMS90NTEuMjg4NS0xNS9lMTUvMTEzODAyOTRfMTU5MDk3MDMwNzgyOTc1Nl8xNTQ5OTUzOTE5X24uanBn/to/cGhwZGVtbzpmZXRjaC5qcGc=\n"; Mac mac = javax.crypto.Mac.getInstance("HmacSHA1"); mac.init(new SecretKeySpec(StringUtils.utf8Bytes(SECRET_KEY),"HmacSHA1")); String t2 = UrlSafeBase64.encodeToString(mac.doFinal(StringUtils.utf8Bytes(signingStr))); System.out.println(ACCESS_KEY+":"+t2); } public static void main(String args[]) throws InvalidKeyException, NoSuchAlgorithmException{ tokenmanage(); }}
4 同步saveas生成签名链接:
http://developer.qiniu.com/code/v6/api/dora-api/saveas.html#示例
package com.demo.dxy;import java.security.InvalidKeyException;import java.security.NoSuchAlgorithmException;import javax.crypto.Mac;import javax.crypto.spec.SecretKeySpec;import com.qiniu.util.StringUtils;import com.qiniu.util.UrlSafeBase64;public class SaveasDemo { public static void tokendownload() throws NoSuchAlgorithmException, InvalidKeyException{ String ACCESS_KEY = "AK"; String SECRET_KEY = "SK"; String urlbase64 = UrlSafeBase64.encodeToString("目标bucket:目标key"); String DownloadUrl = "domain/key?imageView2/../..|saveas/"+urlbase64; //例如可以参考下面的例子,注意domain前面没有http:// String DownloadUrl = "7xrnxn.com1.z0.glb.clouddn.com/QQ20160402-2.png?imageMogr2/crop/!300x300a10a10|saveas/"+urlbase64; Mac mac = javax.crypto.Mac.getInstance("HmacSHA1"); mac.init(new SecretKeySpec(StringUtils.utf8Bytes(SECRET_KEY),"HmacSHA1")); String t2 = UrlSafeBase64.encodeToString(mac.doFinal(StringUtils.utf8Bytes(DownloadUrl))); //打印加好凭证的url System.out.println(DownloadUrl+"/sign/"+ACCESS_KEY+":"+t2); } public static void main(String args[]) throws InvalidKeyException, NoSuchAlgorithmException{ tokendownload(); }}
5 生成刷新凭证:
七牛这边提供刷新缓存的接口:http://7xofkx.com5.z0.glb.clouddn.com/%E4%B8%83%E7%89%9BCDN%E5%88%B7%E6%96%B0%E6%8E%A5%E5%8F%A3V2.pdf
可以通过代码生成刷新的管理凭证,以下直接给出代码:
方法1,直接一步步拼接:
import java.security.InvalidKeyException;import java.security.NoSuchAlgorithmException;import javax.crypto.Mac;import javax.crypto.spec.SecretKeySpec;import com.qiniu.util.StringUtils;import com.qiniu.util.UrlSafeBase64; class RefreshToken { public static void main(String[] args) throws NoSuchAlgorithmException, InvalidKeyException { String ACCESS_KEY = "AK"; String SECRET_KEY = "SK"; String signingStr = "/refresh\n"; Mac mac = javax.crypto.Mac.getInstance("HmacSHA1"); mac.init(new SecretKeySpec(StringUtils.utf8Bytes(SECRET_KEY),"HmacSHA1")); String t2 = UrlSafeBase64.encodeToString(mac.doFinal(StringUtils.utf8Bytes(signingStr))); System.out.println(ACCESS_KEY+":"+t2); }}
方法2,调用auth.sign()方法
import java.security.InvalidKeyException;import java.security.NoSuchAlgorithmException;import com.qiniu.util.Auth; class RefreshToken { public static void main(String[] args) throws NoSuchAlgorithmException, InvalidKeyException { String ACCESS_KEY = "AK"; String SECRET_KEY = "SK"; Auth auth = Auth.create(ACCESS_KEY, SECRET_KEY); String signingStr = "/refresh\n"; String access_token = auth.sign(signingStr); System.out.println(access_token); }}
1 0
- 七牛---用JAVA生成各种凭证代码
- 七牛对私有空间请求pm3u8操作时候生成私有凭证,java 旧版sdk存在的代码逻辑问题。
- 生成凭证代码
- 电子凭证 : Java 生成 Pdf
- 使用shell生成七牛的管理凭证并进行刷新
- 七牛的管理凭证---凭证算法python
- 七牛上传凭证怎样自己写
- 七牛的管理凭证怎样自己写--delete接口java实现
- EAS BOS代码调用DAP 生成利润中心凭证 或生成凭证
- 生成凭证及冲销凭证
- SAP各种冲销凭证
- android学习之七牛(三)--上传凭证
- 七牛java-sdk生成token。
- NC生成凭证设置
- SAP各种凭证的冲销
- 七牛---关于JAVA SDK的各种Demo
- 用Java代码生成二维码
- T1-单据生成凭证后仍然可以参照生成凭证
- pom.xml配置文件详解
- 剑指 offer:跳台阶
- 我发现我最不敢面对的是我自己
- 【iOS】Swift中扩展extension与协议protocol
- 超级强大的SVG SMIL animation动画详解
- 七牛---用JAVA生成各种凭证代码
- 在java servlet中获得session中保存对象的值。
- 用MFC显示一张图片
- Struts 2 – Development mode example
- 检测到有潜在危险的 Request.Form 值
- 傅里叶分析之掐死教程(完整版)
- 后台 手动 join 的索引选择
- android环境配置
- hdu 5437 Alisha’s Party (优先队列)