欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  微信小程序

小程序下如何获取access_token(代码示例)

程序员文章站 2022-03-08 08:55:39
...

本篇文章给大家带来的内容是关于小程序下如何获取access_token(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。



<button bindtap="token">获取token</button>
// pages/token/token.js
Page({
  data: {

  },
  token:function(){
    wx.request({
      url: 'xxxx',
      data:{},
      success:function(res){
        console.log(res.data);
        //这里我是用的新浪云的sae,所以存在读写权限问题,打印出来的信息会存在告警
      }
    });
  }
})
<?php exit();?>
{"access_token":"","expire_time":0}
<?php
  //验证
  function getToken(){
    $timestamp = $_GET["timestamp"];
    $nonce =$_GET["nonce"];
    $token="hello hqtoken";
    $signature=$_GET["signature"];
    $array=array($timestamp,$nonce,$token);
    sort($array);
    $tmpstr=implode("",$array);
    $tmpstr=sha1($tmpstr);
    if($tmpstr == $signature){
      echo $_GET["echostr"];
      exit;
    }
  }
  //获取AccessToken
  function getAccessToken(){
    $appid="你的appid";
    $appsecret = "你的appsecret";
    //文件存储
    $data=json_decode(get_php_file("access_token.php"));
    if($data->expire_time<time()){
      $url="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$appsecret;
      $res=json_decode(httpGet($url));
      $access_token=$res->access_token;
      if($access_token){
        $data->expire_time=time()+7000;
        $data->access_token=$access_token;
        set_php_file("access_token.php",json_encode($data));
      }
    }else{
      $access_token=$data->access_token;
    }
    return $access_token;
  }
  //公共的curl方法
  function httpGet($url){
    $curl = curl_init();
    curl_setopt($curl,CURLOPT_URL,$url);
    curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
    //如果用的是https,ssl安全验证
    curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,false);
    curl_setopt($curl,CURLOPT_SSL_VERIFYHOST,false);
    $res =curl_exec($curl);
    curl_close($curl);
    return $res;
  }
  function get_php_file($filename){
    return trim(substr(file_get_contents($filename),15));
  }
  function set_php_file($filename,$content){
    $fp=fopen($filename,"w");
    fwrite($fp,"<?php exit();?>".$content);
    fclose($fp);
  }
  echo getAccessToken();
?>

以上就是小程序下如何获取access_token(代码示例)的详细内容,更多请关注其它相关文章!

相关标签: access_token