Thinkphp+微信公眾號下靜默獲取用戶openid

1.首先必須是服務號且已認證。

2.以我的項目為例


如果code存在則不用靜默獲取 else?

$user_url=get_url();

//urlencode()函數(shù)原理就是首先把中文字符轉換為十六進制,然后在每個字符前面加一個標識符%。

redirect("https://open.weixin.qq.com/connect/oauth2/authorize?appid=".C("WX_APPID")."&redirect_uri=".$user_url."&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect");

scope值為snsapi_base時為靜默獲取 scope為snsapi_userinfo時不是靜默獲取



靜默獲?。?/p>

$user_url=get_url();

//urlencode()函數(shù)原理就是首先把中文字符轉換為十六進制,然后在每個字符前面加一個標識符%。

redirect("https://open.weixin.qq.com/connect/oauth2/authorize?appid=".C("WX_APPID")."&redirect_uri=".$user_url."&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect");

get_url 函數(shù)放入function.php公共函數(shù)

//獲取當前網(wǎng)址

function get_url() {

$sys_protocal = isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == '443' ? 'https://' : 'http://';

$php_self = $_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME'];

$path_info = isset($_SERVER['PATH_INFO']) ? $_SERVER['PATH_INFO'] : '';

$relate_url = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : $php_self.(isset($_SERVER['QUERY_STRING']) ? '?'.$_SERVER['QUERY_STRING'] : $path_info);

return $sys_protocal.(isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : '').$relate_url;

}

好了就到這里了。。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容