摘要:相信大家對微信公眾號,小程序也都不陌生,那么在開發公眾號,小程序的時候需要調用到微信的接口,固然就會遇到的問題,有哪些問題,以及怎么解決的呢,我們繼續往下看。刷新的方法相關資料微信
前言
微信的影響力眾所周知,越來越多的人也都離不開它,工作,生活,社交的好幫手。相信大家對微信公眾號,小程序也都不陌生,那么在開發公眾號,小程序的時候需要調用到微信的接口,固然就會遇到token的問題,有哪些問題,以及怎么解決的呢,我們繼續往下看。
問題一:微信接口返回"errcode":48001,"errmsg":"api unauthorized”原因有下面幾個:
1、服務號可能沒認證,接口功能未授權
2、 appID和appsecret用的還是你申請的訂閱號里面(個人只能申請公眾號類型為訂閱號)
3、用 scope=snsapi_base,獲取用戶的基本信息
4、用 scope= snsapi_userinfo ,獲取用戶的基本信息access_token失效了
解決辦法:
1、確認公眾號已獲得該接口的權限,可在公眾平臺官網-開發中心頁中查看接口權限
2、把項目里面的appID和appsecret改成測試公眾號的
3、 scope=snsapi_base不能用于獲取用戶基本信息
4、 access_token 失效后,可以使用 refresh_token 調用接口https://api.weixin.qq.com/sns/oauth2/refresh_token?appid={0}&grant_type=refresh_token&refresh_token={1}?重新獲取 access_token(有效期7200秒)
原因:
1、token失效或者不是最新的
解決辦法:
(1)把獲取到的token存入到緩存中,設置過期時間大約為3分鐘,每次獲取token時優先從緩存里獲取
(2)做刷新token的功能。調用接口https://api.weixin.qq.com/cgi-bin/getcallbackip?access_token={0}可查token,接口返回errcode= 40001時,把緩存里的token清除,然后再重新獲取。
1、獲取token的方法 public function getaccess_token() { load()->model("account’); $account_api = WeAccount::create(); $token = $account_api->getAccessToken(); $result = $this->clearAccessToken($token,$account_api); if(!empty($result["token"])){ $token = $result["token"]; } if(is_error($token)){ $this->echoMsg(0,"access_token獲取失敗。"); } return $token; }
2、刷新token的方法 public function clearAccessToken($access_token,$account_api) { global $_W; if(is_error($access_token)){ return $access_token; } $url = "https://api.weixin.qq.com/cgi-bin/getcallbackip?access_token=" . $access_token; $response = ihttp_request($url); $result = @json_decode($response["content"], true); if(empty($result)) { return $response; } if (!empty($result) && $result[‘errcode’] = ‘40001’) { cache_delete(cache_system_key("accesstoken_key", array("key" => $_W["account"]["key"]))); return array("token"=>$account_api->getAccessToken()); } return true; }相關資料
微信errcode":48001,"errmsg":"api unauthorized
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/29509.html
摘要:相信大家對微信公眾號,小程序也都不陌生,那么在開發公眾號,小程序的時候需要調用到微信的接口,固然就會遇到的問題,有哪些問題,以及怎么解決的呢,我們繼續往下看。刷新的方法相關資料微信 前言 微信的影響力眾所周知,越來越多的人也都離不開它,工作,生活,社交的好幫手。相信大家對微信公眾號,小程序也都不陌生,那么在開發公眾號,小程序的時候需要調用到微信的接口,固然就會遇到token的問題,有哪...
摘要:最近開發微信公眾號內嵌頁面,使用搭建的項目,由于業務需求,需要實現微信自定義分享功能,所以項目中集成微信。 最近開發微信公眾號內嵌H5頁面,使用vue搭建的項目,由于業務需求,需要實現微信自定義分享功能,所以項目中集成微信JS-SDK。微信JS-SDK是微信公眾平臺面向網頁開發者提供的基于微信內的網頁開發工具包。通過使用微信JS-SDK,網頁開發者可借助微信高效地使用拍照、選圖、語音、...
摘要:功能需求公司新開的公眾號需要將公司平臺現在的所有精品文章都導入,手動導入會有很多的工作量,所以采用自動化同步文章的方式來達到效果開發說明微信提供了新增永久素材的接口,本次功能是基于這個接口進行數據同步的使用到的接口獲取永久素材列表接口新增永 功能需求 公司新開的公眾號需要將公司平臺現在的所有精品文章都導入,手動導入會有很多的工作量,所以采用自動化同步文章的方式來達到效果 開發說明 微信...
摘要:小程序的登錄跟平時自己這種登錄驗證還不太一樣,多了一個角色,那就是微信服務器。的有效期默認是小時,當用戶一直在使用小程序的話會自動刷新,這個是由微信這邊來維護的。 最近團隊在開發一款小程序,都是新手,一邊看文檔,一邊開發。在開發中會遇到各種問題,今天把小程序登錄這塊的流程整理下,做個記錄。 小程序的登錄跟平時自己APP這種登錄驗證還不太一樣,多了一個角色,那就是微信服務器。 showI...
摘要:一直都想搞一下微信公眾號網頁開發公司忙沒有時間自己也沒開發過所以也沒有頭緒前兩天通過自己的摸索以及自行查找的資料終于通過在本地成功的獲取到了微信的及簽名以及調用微信的接口因為筆者自己在做的時候費了挺長時間沒有找到一個相對完整詳細的一個項目借 一直都想搞一下微信公眾號網頁開發,公司忙沒有時間自己也沒開發過所以也沒有頭緒,前兩天通過自己的摸索以及自行查找的資料,終于通過nodejs在本地成...
閱讀 3451·2023-04-25 19:39
閱讀 3799·2021-11-18 13:12
閱讀 3634·2021-09-22 15:45
閱讀 2433·2021-09-22 15:32
閱讀 716·2021-09-04 16:40
閱讀 3727·2019-08-30 14:11
閱讀 1883·2019-08-30 13:46
閱讀 1563·2019-08-29 15:43