|
@@ -95,10 +95,10 @@ public class WeChatUtil {
|
|
|
/**
|
|
|
* 获取微信AccessToken
|
|
|
*
|
|
|
- *
|
|
|
* @return 返回包含微信AccessToken的Map
|
|
|
*/
|
|
|
public String getToken() {
|
|
|
+ //todo 缓存公众号全局token凭证
|
|
|
StringBuffer url = new StringBuffer();
|
|
|
url.append("https://api.weixin.qq.com/cgi-bin/token")
|
|
|
.append("?grant_type=").append("client_credential")
|
|
@@ -114,6 +114,25 @@ public class WeChatUtil {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取jsticke
|
|
|
+ */
|
|
|
+ public String getJsapiTicket(String token) {
|
|
|
+ //todo 缓存公众号全局token凭证
|
|
|
+ StringBuffer url = new StringBuffer();
|
|
|
+ url.append("https://api.weixin.qq.com/cgi-bin/ticket/getticket")
|
|
|
+ .append("?access_token=").append(token)
|
|
|
+ .append("&type=").append("jsapi");
|
|
|
+ String rs = HttpUtil.get(url.toString());
|
|
|
+ Map<?, ?> map = JSONObject.parseObject(rs, Map.class);
|
|
|
+ if ("ok".equals(map.get("errmsg"))) {
|
|
|
+ return map.get("ticket").toString();
|
|
|
+ } else {
|
|
|
+ log.error("获取jsticke出错:{}", map);
|
|
|
+ throw new ServiceException("获取jsticke出错");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 刷新AccessToken
|
|
|
*
|
|
@@ -158,7 +177,7 @@ public class WeChatUtil {
|
|
|
* @param token access_token
|
|
|
* @return 返回包含微信公众号码ticket的Map
|
|
|
*/
|
|
|
- public Map<?, ?> getTicket(String token, String openId){
|
|
|
+ public Map<?, ?> getTicket(String token, String openId) {
|
|
|
|
|
|
String url = "https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=" + token;
|
|
|
|
|
@@ -252,11 +271,11 @@ public class WeChatUtil {
|
|
|
*/
|
|
|
public static String mapToXml(Map<String, String> data) throws Exception {
|
|
|
DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
|
|
|
- DocumentBuilder documentBuilder= documentBuilderFactory.newDocumentBuilder();
|
|
|
+ DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
|
|
|
org.w3c.dom.Document document = documentBuilder.newDocument();
|
|
|
org.w3c.dom.Element root = document.createElement("xml");
|
|
|
document.appendChild(root);
|
|
|
- for (String key: data.keySet()) {
|
|
|
+ for (String key : data.keySet()) {
|
|
|
String value = data.get(key);
|
|
|
if (value == null) {
|
|
|
value = "";
|