Gaoming13\WechatPhpSdk\Api::get_authorize_url PHP Method

get_authorize_url() public method

!!! 跳转后若提示微信redirect_uri参数错误 很大可能是微信号的 网页授权获取用户基本信息 无权限,或 授权回调页面域名 填写不正确 Examples: $api->get_authorize_url('snsapi_base', 'http://wx.diary8.com/demo/snsapi/callback_snsapi_base.php'); $api->get_authorize_url('snsapi_userinfo', 'http://wx.diary8.com/demo/snsapi/callback_snsapi_userinfo.php');
public get_authorize_url ( string $scope, string $redirect_uri, string $state = '' ) : string
$scope string 应用授权作用域 `snsapi_base` 不弹出授权页面,直接跳转,只能获取用户openid `snsapi_userinfo` 弹出授权页面,可通过openid拿到昵称、性别、所在地。即使在未关注的情况下,只要用户授权,也能获取其信息
$redirect_uri string 授权后要跳转到的地址
$state string 非必须, 重定向后会带上state参数,开发者可以填写a-zA-Z0-9的参数值,最多128字节
return string
    public function get_authorize_url($scope, $redirect_uri, $state = '')
    {
        $redirect_uri = urlencode($redirect_uri);
        $url = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=' . $this->appId . '&redirect_uri=' . $redirect_uri . '&response_type=code&scope=' . $scope . '&state=' . $state . '#wechat_redirect';
        return $url;
    }

Usage Example

/**
 * 生成授权地址的链接(用户点击后完成授权后,跳到回调页面获取用户信息)
 * `snsapi_userinfo` 授权方式获取用户信息(弹出授权页面,可通过openid拿到昵称、性别、所在地。
 * 即使在未关注的情况下,只要用户授权,也能获取其信息)
 *
 * @author 		gaoming13 <*****@*****.**>
 * @link 		https://github.com/gaoming13/wechat-php-sdk
 * @link 		http://me.diary8.com/
 */
require '../../autoload.php';
use Gaoming13\WechatPhpSdk\Api;
// 开发者中心-配置项-AppID(应用ID)
$appId = 'wx733d7f24bd29224a';
// 开发者中心-配置项-AppSecret(应用密钥)
$appSecret = 'c6d165c5785226806f42440e376a410e';
// 这是使用了Memcached来保存access_token
// 由于access_token每日请求次数有限
// 用户需要自己定义获取和保存access_token的方法
$m = new Memcached();
$m->addServer('localhost', 11211);
// api模块 - 包含各种系统主动发起的功能
$api = new Api(array('appId' => $appId, 'appSecret' => $appSecret, 'get_access_token' => function () use($m) {
    // 用户需要自己实现access_token的返回
    return $m->get('access_token');
}, 'save_access_token' => function ($token) use($m) {
    // 用户需要自己实现access_token的保存
    $m->set('access_token', $token, 0);
}));
header('Content-type: text/html; charset=utf-8');
$authorize_url = $api->get_authorize_url('snsapi_userinfo', 'http://wx.diary8.com/demo/snsapi/callback_snsapi_userinfo.php');
echo '<a href="' . $authorize_url . '">' . $authorize_url . '</a>';
All Usage Examples Of Gaoming13\WechatPhpSdk\Api::get_authorize_url