感谢:https://blog.csdn.net/yelin042/article/details/79707855

$(function () {var wxopenid=getcookie('wxopenid');var key=getcookie('key');if (key==''){var access_code=GetQueryString('code');if (wxopenid==""){if (access_code==null){   var fromurl=location.href;var url='https://open.weixin.qq.com/connect/oauth2/authorize?appid=填你自已的appid哟&redirect_uri='+encodeURIComponent(fromurl)+'&response_type=code&scope=snsapi_base&state=STATE%23wechat_redirect&connect_redirect=1#wechat_redirect';location.href=url;}else{   $.ajax({type:'get',url:ApiUrl+'/index.php?act=payment&op=getopenid', async:false,cache:false,data:{code:access_code},dataType:'json',success:function(result){                 if (result!=null && result.hasOwnProperty('openid') && result.openid!=""){addcookie('wxopenid',result.openid,360000);                           getlogininfo(result.openid);} else{alert('微信身份识别失败 \n '+result);location.href=fromurl;}}});    }}else{if (key=='' && wxopenid!='')getlogininfo(wxopenid);  }function getlogininfo(wxopenid){       $.ajax({type:'get',url: ApiUrl + '/index.php?act=login&op=autologininfo',data: { wxopenid:wxopenid},dataType:'json',async:false,cache:false,               success: function (result) {                   if (result.return_code=='OK'){addcookie('key',result.memberinfo.key);addcookie('username',result.memberinfo.username);}else{alert(result.return_msg);location.href=WapSiteUrl+'/tmpl/member/login.html';}}});}}
});

函数

// 写cookie
function addcookie(name,value,expireHours){var cookieString=name+"="+escape(value)+"; path=/";//判断是否设置过期时间if(expireHours>0){var date=new Date();date.setTime(date.getTime+expireHours*3600*1000);cookieString=cookieString+"; expire="+date.toGMTString();}document.cookie=cookieString;
}// 获取cookie
function getcookie(name){var strcookie=document.cookie;var arrcookie=strcookie.split("; ");for(var i=0;i<arrcookie.length;i++){var arr=arrcookie[i].split("=");if(arr[0]==name)return decodeURIComponent(arr[1]); //增加对特殊字符的解析}return "";
}// 删除cookie
function delCookie(name){//删除cookievar exp = new Date();exp.setTime(exp.getTime() - 1);var cval=getcookie(name);if(cval!=null) document.cookie= name + "="+cval+";path=/;expires="+exp.toGMTString();
}

感谢:https://blog.csdn.net/sinat_33010325/article/details/83795026

URL参数值获取GetQueryString

function GetQueryString(name) {var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");var r = window.location.search.substr(1).match(reg);if(r != null) {return decodeURIComponent(r[2]);}return '';
}

讲解

其中"(^|&)" + name + "=([^&]*)(&|KaTeX parse error: Expected 'EOF', got '&' at position 19: …意思就是取以name开头或者以&̲开头以&或者以结尾的字符串
window.location.search.substr(1).match(reg)的意思是找出?之后匹配reg的字符串
decodeURIComponent(r[2])的意思是对所选的字符串进行解码

JS方式 获取微信openid 【html5+jquery】相关推荐

  1. 微信公众号开发系列-获取微信OpenID

    在微信开发时候在做消息接口交互的时候需要使用带微信加密ID(OpenId),下面讲讲述2中类型方式获取微信OpenID,接收事件推送方式和网页授权获取用户基本信息方式获取. 1.通过接收被动消息方式获 ...

  2. 如何获取微信openId

    获取微信openid openid定义 为了识别用户,每个用户针对每个公众号会产生一个安全的OpenID,如果需要在多公众号.移动应用之间做用户共通,则需前往微信开放平台,将这些公众号和应用绑定到一个 ...

  3. vue获取微信登陆权限_vue 授权获取微信openId操作

    1.获取url中参数code: 根据code 获取openId:调用后台接口获取openId . function getUrlKey(name){//获取url 参数 return decodeUR ...

  4. 微信开放平台 获取微信openid和unionid

    <?php //官方文档 https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login ...

  5. uniapp云开发云函数获取微信openid

    产品类型:目前只有微信小程序. 目标:授权登录,建立用户体系. 框架:uniapp+云开发+云函数. 方案一:通过官方提供的 univerify 插件 官方文档:uni一键登录 - uni-app官网 ...

  6. PHP获取微信openid(静默式不需要用户同意)!

    业务需求 因为需要在用户没有关注公众号的情况下获取用户openid,又不需要用户关注,所以需要静默获取一下用户的openid.前提是你需要在微信内打开. 相关代码 以snsapi_base为scope ...

  7. 域名微信拦截html代码,多域名下获取微信openId,通过拦截器注解实现,减少代码量以及业务混淆...

    一个注解,一个拦截器,还有一个中转html页(来源网上,稍微修改),原理看拦截器的类注解.package com.xxx.admin.interceptor; import com.xxx.core. ...

  8. 关于.NET HttpClient方式获取微信小程序码(二维码

    随着微信小程序的火热应用,市面上有关小程序开发的需求也多了起来.近来分析了一项生成有关生成微信小程序码的需求--要求扫码跳转到小程序指定页面(带参数):看了下小程序官方文档,以及网上的例子,未看到多少 ...

  9. SpringBoot获取微信openid(java)

    工具类 public class ComonUtils {public static StringBuffer appendUrl(StringInput code) {StringBuffer in ...

  10. 获取微信openid

    其实原理上讲,可以批量获取openid后,逐条匹配详细信息,并保存到本地,然后找出你需要的用户openid信息. 然而,今天网上偶然发现神人们居然有各种招式 https://www.zhihu.com ...

最新文章

  1. 电子书格式怎么在线转换为PDF格式
  2. PHP常见的字符串方法
  3. java设计模式概述
  4. WF初学者对工作流的认识
  5. WmS详解(一)之token到底是什么?基于Android7.0源码
  6. 手机关机后,就没有定位信息了
  7. vs2015 html页面没有试图,vs2015 web设计视图假死,求帮助
  8. linux mysql 挂马_linux服务器被挂马
  9. Effective STL中文版 译序
  10. python decimal.quantize()参数rounding的各参数解释与行为
  11. node 压缩图片_免费的图片最佳化工具,支持JPG、PNG等格式的无损压缩
  12. 软件观念革命-交互设计精髓
  13. 打开Office时总是提示“正在配置microsoft office解决方法
  14. C语言面试题---数组
  15. 计算机技术应用基础知识,计算机三级PC技术章节习题及答案:计算机应用的基础知识...
  16. 三阶矩阵的lu分解详细步骤_lu分解(笔算矩阵lu分解步骤)
  17. OpenCV-RGB转HSV
  18. TimestampUtil时间处理工具类
  19. 图标、协同办公等新素材上线,100%实用!
  20. AI_Cousera笔记(吴恩达)_开篇

热门文章

  1. element-this.$confirm确定-取消位置交换
  2. 服务器和交换机物理连接_什么是光纤交换机?有什么功能?
  3. 【MUI框架】学习笔记整理 Day 2
  4. php soap wsse,改变xmlns:wsse命名空间在使用Python Zeep的SOAP请求中
  5. Web Service接口如何自动化测试
  6. Android录屏解决方案调研
  7. 计算机专业找工作面试面经总结
  8. vue设计调查问卷:换个思路解决问题
  9. 思科1242 AP无法连接到无线控制器
  10. 软件测试-黑盒测试:正交实验设计法