Principalmente as seguintes etapas de implementação:
1. Ligue o nome do domínio
Primeiro faça login na plataforma pública do WeChat e insira as "Configurações da função" de "Configurações da conta pública" para preencher o nome de domínio de segurança de interface JS ". (Lembrete especial não precisa adicionar http ou https, você sofreu uma perda)
2. Página importa o arquivo JS
<script src = "http://res.wx.qq.com/open/js/jweixin-1.0.0.js"> </script>
<script src = "https://res.wx.qq.com/open/js/jweixin-1.0.0.js"> </script>
3. Verifique a configuração através da interface de configuração
WX.CONFIG ({Debug: true, // LIGUE MODO DE DEBUG, os valores de retorno de todas as APIs chamados serão alertados no cliente. Para visualizar os parâmetros passados, você pode abri -los no lado do PC, as informações mais parâmetros serão impressas através do log e serão impressas apenas no lado do PC. NON -CEST: '', // Necessário, a sequência aleatória gerada pela assinatura da assinatura: '', // Necessário, a assinatura é mostrada no Apêndice 1 JSapilist: [] // Necessário, a lista de interfaces JS a serem usadas e todas as interfaces JS estão listadas no Apêndice 2});4. Verificado com sucesso através do processamento de interface pronto
wx.ready (function () {// código detalhado});5. Falha na verificação através da interface de erro
wx.error (function (res) {});Código de página detalhado
<SCRIPT> // WECHAT Compartilhe momentos $ (function () {/*** clique no usuário para compartilhar no círculo WeChat e carrega a interface da interface ************/var url = window.Location.href.split ('#') [0]; Url = url.replace (///g, '%26'); url: "<%= bashepath%>/lottery/sharetofriend.action? url ="+url, tipo: "post", assíncrono: true, cache: false, datatype: "json", success: function (data) {wx.config ({debug: false, 'AppId:' wx2948dfff92111, wxf91, wx.config ({debuG: false, 'AppId:' wx2948dfff92111, wxf21, wxf91, datatype: datatypes: 'Appid:' WX2948DFFF9211, WXF92, WXF91,; NON -CEST: Data.NonceST, Signature: Data.Signature, JSAPILIST: ['checkjsapi', 'onMenusharetimeline', 'HideOptionMenu', 'OnMenusHarappMessage']}); wx.checkjsapi ({jsapilist: ['getLocation', 'onMenusharetimeline', 'onMenushareAppMessage'], Sucesso: function (res) {//Alert(Res.errmsg);}}; '<%= bashepath%>/lottery/lottery.action? lottery.id = $ {lottery.id}', imgurl: '<%= Basepath%>/Resources/qjc/img/start.png', o triger: function (res) {// alert ('cliques para enviar para os amigos'); jackpot ~~ '); }}); '<%= bashepath%>/loteria/loteria.action? lottery.id = $ {lottery.id}', imgurl: '<%= bashepath%>/recursos/qjc/img/start.png', triger: function (res) {// alert ('user clique para compartilhar para moments'); o jackpot ~~ '); função (dados) {}}); }}); </script>Código de ação de fundo java:
// weChat compartilhe public void sharetofriend () {httpServletRequest request = servletActionContext.getRequest (); String timestamp = sha1util.gettimestamp (); // timestamp string noncestr = wxconfig.getuuid (); // string aleatória, não mais que 32 bits string url = request.getParameter ("url"); String Signature = wxconfig.getSignature ("Appid", "App_Secret", URL, Timestamp, Non -Cest); request.setAttribute ("Timestamp", registro de data e hora); request.setattribute ("não -cest", não -cest); request.setAttribute ("URL", URL); request.setAttribute ("assinatura", assinatura); Resultado wxjssdk = new wxjssdk (timestamp, não -cest, assinatura, URL); CommonUtil.returnmsg (ServletActionContext.GetResponse (), New Gson (). Tojson (resultado)); } Código wxconfig.java
"> // jsapi_ticket public final estático string weixin_jsapi_ticket_url =" https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=access_token&temact get=jsapi ";/acesso String Access_Token; Httputil.get (URL); accessTokenInfo.get ("Expires_in"); Logger.error ("Errcode: {}:"+AccessTokenInfo.get ("Errcode")+"Errmsg: {}:"+AccessTokenInfo.get ("Errmsg"); Mapticket.get ("Ticket"); {} .gettype (); Logger.info ("JSAPI_TICKET:" Ticket+"; Expires_in:"+Expires_in); errcode: {}: "+ticketinfo.get (" errcode ")+" errmsg: {}: "+ticketinfo.get (" errmsg "));}} retornar ticket;} // gerar string aleatória uuid public static string getuuid () {string uuid = Uuid.randomuuid (). ToString () getjsapiticket (AccessToken); "+SignValue); // essa assinatura. É usado principalmente para carregar o WeChat JS. Não se confunda com o acima.Além disso, sha1util.java e md5util.java usados no projeto podem ser baixados diretamente na plataforma.