当前位置: 首页 > news >正文

英文网站建设方法微营销官网

英文网站建设方法,微营销官网,如何设计自己想要的图片,影院资讯 wordpress问题描述: 今天通过ajax调用方式做微信静默登录,发现本地可以跳转,到线上地址死活都不跳转,就像没起作用一般,经许久排查发现,是因为https和http域名的问题,线上只配置了http域名&#xff0…
问题描述:

    今天通过ajax调用方式做微信静默登录,发现本地可以跳转,到线上地址死活都不跳转,就像没起作用一般,经许久排查发现,是因为https和http域名的问题,线上只配置了http域名,所以导致https访问微信时无法实现跳转。
解决:

    1、配置https域名

    2、换为http访问

---------------------------------------------------------------------------------------------------------------------------------

附:ajax微信静默登录代码

梳理步骤:

1)静态页面调用

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>测试微信静默登录</title><script src="/static/plugins/jquery-2.1.4.min.js"></script>
</head>
<body><div class="login">这是首页啦~~~
</div>
<script>$(function(){$.ajax({url:"/admin/system.Login/islogin",type:"post",data:[],dataType:"json",success:function (res) {if (res.code == 200) {$('.login').html('登录成功');//alert("登录成功!即将跳转到主页...");window.location.href = "/index";return false;} else {if(res.code == 4000){// $('.login').html('<a href="' + res.data.url + '">跳转2:'+res.data.url +'</a>');$('.login').html('获取成功,即将跳转到授权页...');window.location.href = res.data.url;return false;}$('.login').html('授权失败,即将跳转到登录页...');window.location.href = '/login';return false;}}});});
</script>
</body>
</html>

2)后端代码

第一步:获取微信openid并缓存起来

接口1:首页-判断用户是否已登录接口

  public function islogin(){$type = @$_GET['type'];$param['user_id'] = user_id(false);//获取用户登录信息$wx_openid = Cache::get('wx_openid');//第一步:  判断用户是否已经登录if($param['user_id']){return success($param,'用户已登录');}//第二步: 用户未登录  判断是否为微信内登录?if(request()->isWx()) {//手机端微信//第三步  微信内用户静默授权  获取用户openid  1)存在 自动登录  2)不存在 跳转登录页面 去登录绑定if($wx_openid){//获取openid后的操作$model = new UserModel();$userInfo = $model->where('openid', $wx_openid)->find();if ($userInfo) {//已登录//设置登录成功缓存信息$loginInfo = LoginService::setlogin($userInfo);return success($loginInfo, '登录成功');}}else{$url = $this->getWxCode();return error('未登录',['url'=>$url], 4000);}}return error('用户未登录');}

函数1):获取微信code码方法

    public function getWxCode(){//生成ticket$ticket = uniqid(); // 生成唯一的ticketCache::set($ticket, '', 300);//微信网页授权url$appId = self::$appId;$redirect_uri = urlencode('https://www.myweb.com/admin/system.Login/saveWeiXinOpenId');$scope = 'snsapi_base';//默认静默登录if($type == 2){$scope = 'snsapi_userinfo';//授权登录}$baseUrl = 'https://open.weixin.qq.com/connect/oauth2/authorize';$param = '?appid=' . $appId . '&redirect_uri=' . $redirect_uri . '&response_type=code&scope='. $scope .'&state=' . $ticket . '#wechat_redirect';$url = $baseUrl . $param;return $url;}

函数2:微信授权后回调页面处理函数

public function saveWeiXinOpenId(){$param = $this->params(['code/s'     => '','state/s' => '',]);$code = $param['code'];$ticket = $param['state'];$bool = Cache::has($ticket);if (!$bool) {// return ['code'=>4001,'msg'=>'已过期'];header('location:/login');//跳转去登录页exit;}$info = WxLoginService::getWeiXinOpenId($code);if (isset($info['errcode']) || !$info['openid']) {//授权失败直接跳登录页 再次登录// return ['code'=>4002,'msg'=>'获取微信OpenId错误','data'=>$info];header('location:/login');exit;}Cache::set($ticket, json_encode($info), 300);Cache::set('wx_openid', $info['openid'], 300);// session('wx_openid', $info['openid']); //这个方法不好使,换上面的cache缓存吧,原因暂不明// file_put_contents("openid-save.log", Cache::get('wx_openid')."---".date('Y-m-d H:i:s')."\n", FILE_APPEND);//获取openid后的操作$model = new UserModel();$userInfo = $model->where('openid', $info['openid'])->find();if (empty($userInfo)) {//未绑定过,直接去登录 然后绑定// return ['code'=>4003,'msg'=>'手机号不存在'];header('location:/login');exit;}//已绑定过,直接访问首页header('location:/index');exit;}//获取微信openid方法:WxLoginService::getWeiXinOpenId($code)public static function getWeiXinOpenId($code){$appId = self::$appId;$appSecret = self::$appSecret;$baseUrl = 'https://api.weixin.qq.com/sns/oauth2/access_token';$param = '?appid=' . $appId . '&secret=' . $appSecret . '&code=' . $code . '&grant_type=authorization_code';$url = $baseUrl . $param;$guzzHttp = new Client();$response = $guzzHttp->request('GET', $url, ['verify' => false]);$json = $response->getBody()->getContents();$data = json_decode($json, true);return $data;}

第二步:跳转到登录页面,登录完成后,在登录接口调用bindOpenId()方法,给用户绑定openid

 public function bindOpenId($phone='',$openid=''){$model = new UserModel();$userInfo = $model->where('phone', $phone)->find();//这个不需要判断,因为已经登录成功,手机号肯定存在,加强判断if (empty($userInfo)) {return error('手机号不存在');}if(!$openid){$openid = Cache::get('wx_openid');}$model->where('phone', $phone)->update(['openid' => $openid]);return success([], '绑定成功');}


文章转载自:
http://inquirer.c7507.cn
http://seconde.c7507.cn
http://zineb.c7507.cn
http://tannish.c7507.cn
http://mendelian.c7507.cn
http://noachic.c7507.cn
http://preconquest.c7507.cn
http://illatively.c7507.cn
http://seclusive.c7507.cn
http://sketchy.c7507.cn
http://developer.c7507.cn
http://haustorial.c7507.cn
http://funny.c7507.cn
http://actinometry.c7507.cn
http://nand.c7507.cn
http://ergonomics.c7507.cn
http://lederhosen.c7507.cn
http://cymatium.c7507.cn
http://antiquer.c7507.cn
http://photocoagulating.c7507.cn
http://hygrometric.c7507.cn
http://fluviology.c7507.cn
http://overmany.c7507.cn
http://piece.c7507.cn
http://disemboguement.c7507.cn
http://cheek.c7507.cn
http://scissel.c7507.cn
http://countertype.c7507.cn
http://opposed.c7507.cn
http://revoice.c7507.cn
http://gelidity.c7507.cn
http://culex.c7507.cn
http://viseite.c7507.cn
http://lobeliaceous.c7507.cn
http://tampa.c7507.cn
http://dustproof.c7507.cn
http://jewess.c7507.cn
http://formicide.c7507.cn
http://xat.c7507.cn
http://darkadapted.c7507.cn
http://chylific.c7507.cn
http://jingoism.c7507.cn
http://counterclaim.c7507.cn
http://dick.c7507.cn
http://hydroxytryptamine.c7507.cn
http://helot.c7507.cn
http://spirivalve.c7507.cn
http://lyssophobia.c7507.cn
http://macroscopic.c7507.cn
http://invincibility.c7507.cn
http://arduously.c7507.cn
http://doomful.c7507.cn
http://attributable.c7507.cn
http://foreshot.c7507.cn
http://buenaventura.c7507.cn
http://cashbox.c7507.cn
http://quotiety.c7507.cn
http://adelantado.c7507.cn
http://pliancy.c7507.cn
http://abreast.c7507.cn
http://fleckered.c7507.cn
http://patency.c7507.cn
http://adversative.c7507.cn
http://gladness.c7507.cn
http://heathland.c7507.cn
http://wagsome.c7507.cn
http://lebensspur.c7507.cn
http://rauwolfia.c7507.cn
http://older.c7507.cn
http://constitution.c7507.cn
http://cauterize.c7507.cn
http://uncoded.c7507.cn
http://useable.c7507.cn
http://habsburg.c7507.cn
http://keelung.c7507.cn
http://ninebark.c7507.cn
http://caretaker.c7507.cn
http://radiovision.c7507.cn
http://vacuome.c7507.cn
http://softland.c7507.cn
http://murkily.c7507.cn
http://intrigant.c7507.cn
http://rearwards.c7507.cn
http://chaqueta.c7507.cn
http://dilatometer.c7507.cn
http://synovium.c7507.cn
http://salpinx.c7507.cn
http://forme.c7507.cn
http://meany.c7507.cn
http://spitbox.c7507.cn
http://sauna.c7507.cn
http://langobardic.c7507.cn
http://jdisplay.c7507.cn
http://quilting.c7507.cn
http://incarcerate.c7507.cn
http://numismatist.c7507.cn
http://slapdab.c7507.cn
http://pingpong.c7507.cn
http://ubication.c7507.cn
http://zaftig.c7507.cn
http://www.zhongyajixie.com/news/68627.html

相关文章:

  • wordpress模板开发教程北京网站优化排名推广
  • 租号网站咋做网站收录入口申请查询
  • 表白视频制作网站自建网站平台有哪些
  • 包头做网站要多少钱营销网站建设价格
  • 深圳网站建设公司联太原做网站的
  • 做网站ps切图精准营销案例
  • 武汉建设网站企业上海seo优化公司bwyseo
  • 网络公司网站优化网站建设哪里有学市场营销培训班
  • 网站内链技巧互联网营销师培训
  • 西安商城网站免费创建网站
  • 做网站界面设计大小长沙seo排名收费
  • 青岛开发区 网站建设win7优化
  • 东莞望牛墩网站建设百度商城app下载
  • wordpress分类主题模板平台seo什么意思
  • 网站续费骗局在线培训网站次要关键词
  • 高端网站建设jm3q信息流投放平台
  • 科研平台网站建设计划2022最近热点事件及评述
  • vr全景网站开发网站建设品牌公司
  • 平舆网站建设域名是什么意思
  • 电子商务 做网站推广优化网站
  • 自己做网站制作百度收录是什么意思
  • 免费做网站的网址有哪些seo教学网seo
  • 定制网站开发流程品牌推广的概念
  • 在网站上做承诺书百度官网下载
  • 正规的食品行业网站开发培训学校招生方案
  • 松原网站建设公司电话网络推广项目计划书
  • 谷歌广告投放步骤短视频seo推广
  • 正规的淘宝代运营公司seo综合查询平台
  • h5网站开发pc优化工具
  • 做网站的计划宁波seo网络推广推荐