1.首先第一步查看一下自己的微信公众平台有没有获取js-sdk地图的开发者权限
2.引用jar包:
3.进入首页的时候,开始获取我们的位置信息:
PS:注意这个是写在首页的,下面那个才是写在你要调启接口的页面
(3.1) vip_wxsdk_config方法:
@ResponseBody
@RequestMapping("vip_wxsdk_config")
public Map vip_wxsdk_config(Model model, Wx wx, HttpSession session, String url) {
wx = wxService.selectByPrimaryKey(1);
// 1、获取AccessToken
String jsapi_ticket = "";
String accessToken = "";
if (session.getAttribute(Constants.jsapi_ticket) != null) {
jsapi_ticket = session.getAttribute(Constants.jsapi_ticket).toString();
} else {
accessToken = CommonUtil.getToken(wx.getWxAppid(), wx.getWxAppsecret()).getAccessToken();
// 2、获取Ticket
jsapi_ticket = CommonUtil.getTicket(accessToken);
session.setAttribute(Constants.jsapi_ticket, jsapi_ticket);
}
// 3、时间戳和随机字符串
String noncestr = AdvancedUtil.getNonceStr();
String timestamp = Sha1Util.getTimeStamp();
// System.out.println("accessToken:"+accessToken+"\njsapi_ticket:"+jsapi_ticket+"\n时间戳:"+timestamp+"\n随机字符串:"+noncestr);
// 5、将参数排序并拼接字符串
String str = "jsapi_ticket=" + jsapi_ticket + "&noncestr=" + noncestr + "×tamp=" + timestamp + "&url=" + url;
// 6、将字符串进行sha1加密
String signature = SHAUtils.SHA1(str);
map = new HashMap();
map.put("appid", wx.getWxAppid());
map.put("accessToken", accessToken);
map.put("jsapi_ticket", jsapi_ticket);
map.put("timestamp", timestamp);
map.put("noncestr", noncestr);
map.put("signature", signature);
return map;
}
(3.2) vip_wxsdk_dingwei方法:
@ResponseBody
@RequestMapping("vip_wxsdk_dingwei")
public Map vip_wxsdk_dingwei(Model model, Wx wx, String latitude, String longitude, HttpSession session) {
if (latitude != null && longitude != null) {
session.setAttribute("latitude", latitude);
session.setAttribute("longitude", longitude);
this.prompt = "success";
} else {
this.prompt = "error";
}
return map;
}
4.在我们要跳转的页面加上调启的js: