1. 程式人生 > 實用技巧 >微信登入報40001錯誤的原因

微信登入報40001錯誤的原因

今天要做微信端登陸,需要獲取使用者的unionid,但是不管怎麼搞都是報40001的錯誤

["errcode"] => int(40001)
["errmsg"] => string(81) "invalid credential, access_token is invalid or not latest hint: [S1nzBA08262556!]"
  • 1
  • 2

百度了很多都沒有解決問題,直到最後才發現微信其實有兩個access_token,
一個是網頁授權access_token
一個是介面基礎呼叫access_token,
而獲取使用者unionid的介面需要的是介面基礎呼叫access_token,之前都是在拿網頁授權access_token呼叫,所以一直報錯

微信有2個ACCESS_TOKEN,

1,基礎介面的token 獲取介面是

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

2,使用者網頁授權access_token 獲取介面地址是

https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

網頁授權access_token 需要通過code去獲取