博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微信JS网页授权
阅读量:5264 次
发布时间:2019-06-14

本文共 2571 字,大约阅读时间需要 8 分钟。

1.登录微信公众号平台

2.设置

3.授权url配置,

签名model类:

public class JsConfigVo {	private String appId;		private String timestamp;		private String nonceStr;		private String signature;		private String url;	public String getAppId() {		return appId;	}	public void setAppId(String appId) {		this.appId = appId;	}	public String getTimestamp() {		return timestamp;	}	public void setTimestamp(String timestamp) {		this.timestamp = timestamp;	}	public String getNonceStr() {		return nonceStr;	}	public void setNonceStr(String nonceStr) {		this.nonceStr = nonceStr;	}	public String getSignature() {		return signature;	}	public void setSignature(String signature) {		this.signature = signature;	}	public String getUrl() {		return url;	}	public void setUrl(String url) {		this.url = url;	}	}  

授权:

@Controller@RequestMapping("/api/js")public class WxSdkController {	@Autowired	private final static Logger LOG = LoggerFactory.getLogger(WxSdkController.class);	/**	 * 微信JS-SDK	 * @param request	 * @return	 */	@Autowired	private TaskExecutor task;	@Autowired	private WeixinAccountService weixinAccountService;		@RequestMapping(value = "/sdk",method ={RequestMethod.GET,RequestMethod.POST})	@ResponseBody	public Result wxsdk(String signUrl){		signUrl=URLDecoder.decode(signUrl);		final Result result = Result.newInstance();		ResultObj obj=new ResultObj();		try {			WeixinAccount weixinAccount = weixinAccountService.findOne(WeixinPublicPlatform.DJ17.getDescription());			String	appId = weixinAccount.getAppId();			String appSecret = weixinAccount.getAppSecret();			ApiConfig config = new ApiConfig(appId, appSecret,true);			String ticket = config.getJsApiTicket();			String jsapi_ticket = ticket;			String noncestr = WxJsConfigUtils.getNoncestr();			String timestamp = WxJsConfigUtils.getTimestamp();						String str = "jsapi_ticket="+jsapi_ticket+"&noncestr="+noncestr+"&timestamp="+timestamp+"&url="+signUrl;  			System.out.println(str);			String signature =WxJsConfigUtils.newSHA1(str); 			System.out.println(signature);						JsConfigVo vo = new JsConfigVo();			vo.setAppId(appId);			vo.setNonceStr(noncestr);			vo.setTimestamp(timestamp);			vo.setSignature(signature);			vo.setUrl(signUrl);						obj.put("jsSdk", vo);			result.setObj(obj);			result.setCode(ResultCode.SUCCESS);			result.setSuccess(true);			result.setMsg("获取配置成功");											} catch (Exception e) {			LOG.error(e.getMessage(), e);			result.setSuccess(false);			result.setCode(ResultCode.SERVICE_EXCEPTION);			result.setMsg(Constants.EXCEPTION_MSG);		}				return result;						}	}

  

 

转载于:https://www.cnblogs.com/notmore/p/8980822.html

你可能感兴趣的文章
提高PHP性能的10条建议
查看>>
Java大数——a^b + b^a
查看>>
简单的数据库操作
查看>>
帧的最小长度 CSMA/CD
查看>>
树状数组及其他特别简单的扩展
查看>>
普通求素数和线性筛素数
查看>>
PHP截取中英文混合字符
查看>>
【洛谷P1816 忠诚】线段树
查看>>
电子眼抓拍大解密
查看>>
tomcat7的数据库连接池tomcatjdbc的25个优势
查看>>
Html 小插件5 百度搜索代码2
查看>>
java.io.IOException: read failed, socket might closed or timeout, read ret: -1
查看>>
java 常用命令
查看>>
卷积中的参数
查看>>
51nod1076 (边双连通)
查看>>
ViewPager的onPageChangeListener里面的一些方法参数:
查看>>
Linux pipe函数
查看>>
java equals 小记
查看>>
2019春 软件工程实践 助教总结
查看>>
Zerver是一个C#开发的Nginx+PHP+Mysql+memcached+redis绿色集成开发环境
查看>>