七牛のピクチャーのダウンロードのTokenは生成します


1.参照先:
http://developer.qiniu.com/docs/v6/api/reference/security/download-token.html
七牛图片下载之Token生成_第1张图片
2.以上の手順でTokenを生成する方法
最も重要なのは上図の1.hmac_sha1 :
このネット上には多くの実装があり、私はネット上で例を探しました.
   
package org.Utils;

import javax.crypto.Mac;
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;

public class HmacSha1New {

	private static final String MAC_NAME = "HmacSHA1";
	private static final String ENCODING = "UTF-8";
	
	/**
	 * 
	 *                   、、、、      、、、    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);
	}
}

署名:
	byte[]  shaResult = HmacSha1New.HmacSHA1Encrypt(DownloadUrl, 'MY_SECRET_KEY')

に、
EncodedSign = urlsafe_base64_encode(
shaResult
)
で できます.
String EncodedSign = UrlSafeBase64.encodeToString(
shaResult
);

のjarバッグから ました

のように、ダウンロードしたURLにつづりましょう.
3. のDemoバッグを :【Demoをダウンロード】
4. のバカに しめられた を します.
1. は に をアップロードしました.
       Token  _ 2
2.その「ダウンロード」の2 を て、クリックして、ダウンロードして、ダウンロードのURLを ることができて、これはテストに らします:
http://7xlkfa.com1.z0.glb.clouddn.com/210636zxr3kv7z8x6cjrjt.jpg?attname=&e=1442130892&token=MyAccessKey:Token
3.はい、 めます. の ドキュメントのアドレスに づいて、Tokenを します. に:TokenByMe
すると、つなぎ わせの は:
  http://7xlkfa.com1.z0.glb.clouddn.com/210636zxr3kv7z8x6cjrjt.jpg?attname=&e=1442130892&token=MyAccessKey:TokenByMe
3、4 やったが、いずれも:

4. は の を いましたが、 わらず、
その 、なぜか サイトの を て、「attname=&」が くなったことがわかりました.TokenのURLを したからです.
DownloadUrl = 'http://developer.qiniu.com/resource/flower.jpg?e=1451491200'
「attname=&」は まれていません!
サイトのリンクもご ください.
http://developer.qiniu.com/resource/flower.jpg?e=1451491200&token=MY_ACCESS_KEY:yN9WtB0lQheegAwva64yBuH3ZgU=
その 、 したTokenを ろにつなぎ、「attname=&」を り くことで しました.
       Token  _ 3
なぜ「ダウンロード」をオンにしたのかというと、そのURLには「attname=&」が まれていて、ダウンロードできます.そのToken は、DownloadUrlに したので、 されたURLも していません.
http://7xlkfa.com1.z0.glb.clouddn.com/210636zxr3kv7z8x6cjrjt.jpg?attname=&e=1442130892&token=MyAccessKey:TokenByMe
しくダウンロード!
【 、 が「attname=&」を けていない の き 】
       Token  _ 4