九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
微信分享接口
// 獲得js signature
public static String getSignature(String jsapi_ticket, String timestamp,
        String nonce, String jsurl) throws IOException {
    /****
     * 對(duì) jsapi_ticket、 timestamp 和 nonce 按字典排序 對(duì)所有待簽名參數(shù)按照字段名的 ASCII
     * 碼從小到大排序(字典序)后,使用 URL 鍵值對(duì)的格式(即key1=value1&key2=value2…)拼接成字符串
     * string1。這里需要注意的是所有參數(shù)名均為小寫字符。 接下來對(duì) string1 作 sha1 加密,字段名和字段值都采用原始值,不進(jìn)行
     * URL 轉(zhuǎn)義。即 signature=sha1(string1)。
     * **如果沒有按照生成的key1=value&key2=value拼接的話會(huì)報(bào)錯(cuò)
     */
    String[] paramArr = new String[] { "jsapi_ticket=" + jsapi_ticket,
            "timestamp=" + timestamp, "noncestr=" + nonce, "url=" + jsurl };
    Arrays.sort(paramArr);
    // 將排序后的結(jié)果拼接成一個(gè)字符串
    String content = paramArr[0].concat("&"+paramArr[1]).concat("&"+paramArr[2])
            .concat("&"+paramArr[3]);
    System.out.println("拼接之后的content為:"+content);
    String gensignature = null;
    try {
        MessageDigest md = MessageDigest.getInstance("SHA-1");
        // 對(duì)拼接后的字符串進(jìn)行 sha1 加密
        byte[] digest = md.digest(content.toString().getBytes());
        gensignature = byteToStr(digest);
    catch (NoSuchAlgorithmException e) {
        e.printStackTrace();
    }
    // 將 sha1 加密后的字符串與 signature 進(jìn)行對(duì)比
    if (gensignature != null) {
        return gensignature;// 返回signature
    else {
        return "false";
    }
    // return (String) (ciphertext != null ? ciphertext: false);
}
/**
 * 將字節(jié)數(shù)組轉(zhuǎn)換為十六進(jìn)制字符串
 *
 * @param byteArray
 * @return
 */
private static String byteToStr(byte[] byteArray) {
    String strDigest = "";
    for (int i = 0; i < byteArray.length; i++) {
        strDigest += byteToHexStr(byteArray[i]);
    }
    return strDigest;
}
/**
 * 將字節(jié)轉(zhuǎn)換為十六進(jìn)制字符串
 *
 * @param mByte
 * @return
 */
private static String byteToHexStr(byte mByte) {
    char[] Digit = { '0''1''2''3''4''5''6''7''8''9''A',
            'B''C''D''E''F' };
    char[] tempArr = new char[2];
    tempArr[0] = Digit[(mByte >>> 4) & 0X0F];
    tempArr[1] = Digit[mByte & 0X0F];
    String s = new String(tempArr);
    return s;
}
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
釘釘免登錄
loadrunner 腳本開發(fā)
LR常用函數(shù)整理
C# 中字符串string和字節(jié)數(shù)組byte[]的轉(zhuǎn)換
Flask 微信卡券小項(xiàng)目:從開發(fā)到上線
微信支付開發(fā)流程
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服