導讀微信(WeChat)是騰訊公司于2011年1月21日推出的一個為智能終端提供即時通訊服務的免費應用程序,由張小龍所帶領的騰訊廣州研發中心產品團隊打造 [2] 。微信支持跨通信運營商、跨操作系統平臺... 微信(WeChat)是騰訊公司于2011年1月21日推出的一個為智能終端提供即時通訊服務的免費應用程序,由張小龍所帶領的騰訊廣州研發中心產品團隊打造 [2] 。微信支持跨通信運營商、跨操作系統平臺通過網絡快速發送免費(需消耗少量網絡流量)語音短信、視頻、圖片和文字,同時,也可以使用通過共享流媒體內容的資料和基于位置的社交插件“搖一搖”、“漂流瓶”、“朋友圈”、”公眾平臺“、”語音記事本“等服務插件。 本文主要和大家分享微信如何獲取openid,首先要明確一點,你要用戶授權,是需要引導用戶到你的授權頁面的。1、你得有個鏈接 https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=URI&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect 說明: APPID是你的微信公眾號ID,以wx開頭 URI為你的授權入口,一般是微信公眾號指向的主域名下,我這里放在了:http://www.xxoo.com/home/index/test 注意轉義,所以 URI=http%3A%2F%2Fwww.xxoo.com%2Fhome%2Findex%2Ftest 2、這個鏈接可以生成二維碼給人家掃,比如到這個網站:https://cli.im/ 把上面替換好的鏈接填進去,生成即可。 3、獲取openid的代碼 function test(){ $code=$_GET['code']; //echo htmlspecialchars($code);exit; $appid='wx**********'; //APPID $appsecret='**************'; //APP密鑰 $url='https://api.weixin.qq.com/sns/oauth2/access_token?appid='.$appid.'&secret='.$appsecret.'&code='.$code.'&grant_type=authorization_code'; $header [] = "content-type: application/json; charset=UTF-8"; $ch = curl_init (); curl_setopt ( $ch, CURLOPT_URL, $url ); //請求的方式是post curl_setopt ( $ch, CURLOPT_CUSTOMREQUEST, "GET" ); // 禁用后cURL將終止從服務端進行驗證 curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE ); //不檢查證書 curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, FALSE ); //發送頭部字段 curl_setopt ( $ch, CURLOPT_HTTPHEADER, $header ); //告訴對方 自己的瀏覽器型號 curl_setopt ( $ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)' ); //即表示自動進行跳轉抓取(如果URL發生了302重定向)繼續抓取 curl_setopt ( $ch, CURLOPT_FOLLOWLOCATION, 1 ); //自動重定向開啟 curl_setopt ( $ch, CURLOPT_AUTOREFERER, 1 ); //發送的post參數 //curl_setopt ( $ch, CURLOPT_POSTFIELDS, $param ); //得到的結果不顯示在屏幕上,作為變量結果儲存 curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, true ); $res = curl_exec ( $ch ); //如果運行錯誤,返回一個錯誤號 $flat = curl_errno ( $ch ); if ($flat) { $data = curl_error ( $ch ); } curl_close ( $ch ); //拿到了返回結果后json格式轉化為可以使用的數組格式 $res = json_decode ( $res, true ); //$access_token=$res['access_token']; $openid=$res['openid']; //跳轉到抽獎頁面 header('Location: http://wx.xxoo.com/test/index/index/openid/'.$openid); } 這樣可以通過獲取openid來識別每一個微信用戶。 相關推薦: 微信小程序之獲取session_key與openid的案例(圖) 以上就是微信如何獲取openid的詳細內容,更多請關注php中文網其它相關文章! 微信提供公眾平臺、朋友圈、消息推送等功能,用戶可以通過“搖一搖”、“搜索號碼”、“附近的人”、掃二維碼方式添加好友和關注公眾平臺,同時微信將內容分享給好友以及將用戶看到的精彩內容分享到微信朋友圈。 |
溫馨提示:喜歡本站的話,請收藏一下本站!