介绍
这篇文章主要介绍java如何获取微信时间戳,nonceStr,签名参数,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
用java代码来实现获取时间戳,nonceStr,签名这三个参数
签署代码:
package com.test.util; import java.util.UUID; import java.util.Map; import java.util.HashMap; import java.util.Formatter; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.io.UnsupportedEncodingException;,, public 才能class Sign  { ,,,public static void main (String [], args), { ,,,,,,,String jsapi_ticket =JsapiTicketUtil.getJSApiTicket ();; ,,,,,,,//,注意,URL 一定要动态获取,不能,硬编码 ,,,,,,,String url =,“http://www.vxzsk.com/xx/x.do"//url是你请求的一个行动或者控制器地址,并且方法直接跳转到使用jsapi的jsp界面 ,,,,,,,Map<字符串,String>, ret =,标志(jsapi_ticket, url); ,,,,,,,for (Map.Entry entry : ret.entrySet ()), { ,,,,,,,,,,,System.out.println (entry.getKey (), +,,,,,, +, entry.getValue ()); ,,,,,,,} ,,,}; public 才能;static  Map<字符串,,String>,标志(String jsapi_ticket, String url), { ,,,,,,,Map<字符串,String>, ret =, new HashMap<字符串,String> (); ,,,,,,,String nonce_str =, create_nonce_str (); ,,,,,,,String timestamp =, create_timestamp (); ,,,,,,,String string1; ,,,,,,,String signature =,““ , ,,,,,,,//注意这里参数名必须全部小写,且必须有序 ,,,,,,,string1 =,“jsapi_ticket=? +, jsapi_ticket + ,,,,,,,,,,,,,,,,,,,noncestr=? +, nonce_str + ,,,,,,,,,,,,,,,,,,,时间戳=?+,timestamp + ,,,,,,,,,,,,,,,,,,,url=? +, url; ,,,,,,,System.out.println (string1); , ,,,,,,,试一试 ,,,,,,,{ ,,,,,,,,,,,MessageDigest crypt =, MessageDigest.getInstance (“SHA-1"); ,,,,,,,,,,,crypt.reset (); ,,,,,,,,,,,crypt.update (string1.getBytes (“UTF-8")); ,,,,,,,,,,,signature =, byteToHex (crypt.digest ()); ,,,,,,,} ,,,,,,,catch (NoSuchAlgorithmException e) ,,,,,,,{ ,,,,,,,,,,,e.printStackTrace (); ,,,,,,,} ,,,,,,,catch (UnsupportedEncodingException e) ,,,,,,,{ ,,,,,,,,,,,e.printStackTrace (); ,,,,,,,} , ,,,,,,,ret.put (“url",, url); ,,,,,,,ret.put (“jsapi_ticket",, jsapi_ticket); ,,,,,,,ret.put (“nonceStr",, nonce_str); ,,,,,,,ret.put (“timestamp",,时间戳); ,,,,,,,ret.put (“signature",,签名); , ,,,,,,,return 回收; ,,,} , ,,,private static String byteToHex (byte [] final 散列),{ ,,,,,,,Formatter Formatter =, new 格式化程序(); ,,,,,,,for (byte b :散列) null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null nulljava如何获取微信时间戳,nonceStr、签名参数