微信公眾號開發 獲取openid時報錯40163:code been used問題的解決
概述
通過微信官方提供的介面https://api.weixin.qq.com/sns/oauth2/access_token
介面,獲取openid
,結果獲取不到。
報錯程式碼
WechatUserInfo(accessToken=null, expiresIn=null, refreshToken=null, openid=null, scope=nul
l, errcode=40163, errmsg=code been used, hints: [ req_id: X6qVLa09602017 ])
解決
最後發現,當使用同一個code
,去第二次獲取openid時,會出現如上報錯。
可以走一層快取,在redis中儲存一個key為:“open:wechat:code:xxx”的值。當使用code獲取openid時,先檢查一下redis中是否已經有這個值了,如果有,就直接用。沒有的話,再去呼叫微信介面獲取。
總結
使用快取,避免一個code使用兩次,來避免code been used
異常
相關推薦
微信公眾號開發 獲取openid時報錯40163:code been used問題的解決
概述 通過微信官方提供的介面https://api.weixin.qq.com/sns/oauth2/access_token介面,獲取openid,結果獲取不到。 報錯程式碼 WechatUserInfo(accessToken=null, ex
微信公眾號開發獲取openid和使用者基本資訊還有發訊息的TP3.23方法類
<?php namespace Home\Controller; use Think\Controller; /** * */ class WeixinController extends Controller { var $tokenFile; const ap
微信公眾號開發--獲取用戶信息中文亂碼的解決方案
其中 utf-8 == font zzu 解決 col class api 在微信開發中我們會經常需要獲取用戶的信息。 微信給我們提供了獲取用戶信息的api, 地址為 https://api.weixin.qq.com/cgi-bin/user/info?access_t
java微信公眾號開發獲取微信使用者資訊
此博文參考:https://www.cnblogs.com/sxmny/articles/4969119.html獲取微信使用者的基礎資訊(包括頭像,暱稱,所在地等)大體分為如下三步:1.獲取code;只有使用者同意授權才能拿到使用者的微信資訊.使用者同意授權後,我們就可以拿
JAVA微信公眾號開發-獲取access_token並保證access_token長久有效
1.access_token是公眾號的全域性唯一介面呼叫憑據,公眾號呼叫各介面時都需使用access_token,所以這個資料是非常的重要的,首先閱讀以下微信開發文件,對於access_token是這樣寫的。根據文件的指示,我們的access_token的需求如下:單一獲取和
微信公眾號【獲取openid和使用者資訊(Webform)】
#夢想是一場華美的旅途,每個人在找到它之前,都只是孤獨的少年。 #Index.aspx.cs程式碼: public partial class Index : System.Web.UI.Page { //使用者id
微信公眾號開發獲取access_token和jsapiticket
Java實現HTTP的GET請求示例: import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStr
微信公眾號之獲取openId
在小夥伴們開發微信公眾號、小程式或者是在微信內建瀏覽器開啟的專案時,會遇到的第一個問題就是如何獲取openId,今天小編就給大家帶來的是如何獲取openId。 首先 我們要從微信開發者後臺得到appid,這個appid是管理員在設定微信後臺時獲取的,而且是唯一的,而且還需要在微信後
微信公眾號開發時,前端向後端傳送請求獲取signature和openID時出現跨域錯誤的解決辦法。
微信公眾平臺開發用了前端和後端兩個人,前期開發階段前端就很容易遇到跨域問題,今天在前端向後端傳送請求獲取signature,但是前段老是報錯跨域,接受後端的返回資料失敗怎麼辦呢? 其實很簡單,後端最後返回簽名的程式碼本來是這樣的: System.out.println("
微信公眾號開發中遇到的問題——支付回撥,分享,獲取openId(三)
微信的統一下單介面(https://api.mch.weixin.qq.com/pay/unifiedorder)中,下單時,有這樣一個引數:notify_url,該引數是為接收微信支付非同步通知回撥的地址,通知url必須為直接可訪問的url,不能攜帶引數。之前我做回撥的時
【PHP】微信公眾號開發,TP5本地環境下獲取微信使用者openId與使用者資訊
1.相關準備 需要準備自己公眾號的appId與appSecret,可在微信公眾平臺後臺中檢視 本地開發可以使用微信提供的微信公眾平臺測試賬號來進行除錯 使用微信掃碼即可直接登入,登入後微信會提供一個測試用的appId 與 appSecret 關注一下自己的測試
微信公眾號開發,關聯網頁獲取微信openid
微信公眾號關聯網頁獲取微信openid的步驟可以參考《微信公眾平臺技術文件》-> 微信網頁授權,官方連結地址:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842具體而言,網頁授權流程
微信公眾號開發訪問第三方網頁獲取使用者的openid
訪問第三方網頁獲取使用者的openid首先要滿足兩個條件 1.不能是訂閱號(訂閱號可以藉助服務號來獲取openid,直接將請求連結放在訂閱號上) 2.要經過認證 在開發者中心可以看該公眾號是否有許可權 若已獲得許可權才能繼續,點選修改 填上你的回撥域名
【微信公眾號開發】根據openId群發消息
tostring put spa rep tpc shm 發送 ring private 根據開發文檔可知,只要使用POST方式提交固定格式的json字符串到那個地址即可。這裏我寫的是最簡單的文本 第一步:建立對應的實體類。 1 package cn.sp.bean;
微信公眾號開發之網頁授權(獲取用戶信息)
還需要 開發文檔 app err 通過 casb ddt 省份 sse 這次暑假留在學校參與工作室的項目,對微信公眾號比較感興趣,所以參與這方面的學習研究。 昨天完成了關於網頁授權,獲取用戶信息方面的功能,所以乘熱打鐵,寫上一篇。實現本篇涉及的 功能,還需要完成一些基礎
微信公眾號開發紀要(3)-獲取用戶openid
如何 ado title mage 如果 href 詳細 註意 分享 項目要求做掃描功能前需要進行用戶綁定,不是所有的用戶都能盤點掃描。這就要求先獲取用戶的openid(微信公眾號的用戶唯一憑證),然後與業務系統的用戶信息進行驗證和綁定。如何獲取用戶的openid在開發指引
C#微信公眾號開發 -- (四)獲取API呼叫所需的全域性唯一票據access_token
access_token是公眾號的全域性唯一票據,公眾號呼叫各介面時都需使用access_token。開發者需要進行妥善儲存。access_token的儲存至少要保留512個字元空間。access_token的有效期目前為2個小時,需定時重新整理,重複獲取將導致上次獲取的access_token失效。 獲取
微信公眾號開發(二) -- 獲取使用者資訊 修改粉絲標籤
獲取code值 $appid=’’ // 微信支付申請對應的公眾號的APPID $urlCode=’’ // 處理code頁面 不能包含? 是微信可訪問頁面 $url="https://open.weixin.qq.com/connect/oauth2/authorize?appid="
【Node.js+Express微信公眾號開發】第二步:編寫獲取access_token介面
一、構建一個介面 從上一篇文章中,仔細觀察一下目錄結構,不難發現,routes路由這塊,就是我們放node服務定義放置路由的目錄,原本生成了一個users檔案,暫時用處不大,我們便可以直接更改這個路由。如圖,分別更改一個getAccessToken.js。 然後我
微信公眾號開發(五)-- 獲取使用者位置
獲取jssdk 連結 裡面有寫 獲得使用者地理位置許可權 <script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script> <script> wx.config({