首頁  >  文章  >  微信小程式  >  微信端開發之如何登入小程式

微信端開發之如何登入小程式

高洛峰
高洛峰原創
2017-03-11 15:58:152322瀏覽

本篇文章主要介紹了微信端開發--登入小程式步驟,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟著小編過來看看吧

這個小程式的主要目的是為了用戶用微信的用戶資訊登入後將用戶資訊授權存入自己的資料庫中,這樣以後每次微信登入都會得到的code所得到的openid 可以在專案的資料庫中查到該使用者的相關資訊。

在測試的過程中,需要使用者登入得到的code,所以會用到微信開發小工具~!

微信端開發之如何登入小程式

該工具的使用必須被專案授權

微信端開發之如何登入小程式

#所產生的code是有時間限制的

微信登入埠的api如下

介面位址:http://www.php.cn/

請求參數:

##參數必填說明

appid 是小程式唯一識別
secret 是小程式的app secret
js_code 是登入時取得的code
grant_type 是填入為authorization_code

# 傳回參數:


參數說明

openid 使用者唯一識別
session_key 會話金鑰
expires_in 會話有效期限, 以秒為單位, 例如2592000代表會話有效期限為30天

回傳說明:


//正常返回的JSON数据包
{
   "openid": "OPENID",
   "session_key": "SESSIONKEY"
   "expires_in": 2592000
}


//错误时返回JSON数据包(示例为Code无效)
{
  "errcode": 40029,
  "errmsg": "invalid code"
}

所以我們可以將程式碼寫成如下

公司將要傳送的封包格式自己都寫好了的,我只需要寫出請求路徑和請求參數就ok


//@Param code 用户登录微信生成的code
//@Return OAuthResult 返回包含openid和session_key和expires_in的类
public OAuthResult getOAuthResultByCode(String code) {
    String path = "/sns/jscode2session";
    Map<String, Object> parameters = new HashMap<>();
    parameters.put("appid", WechatConstant.WECHAT_APP_ID);
    parameters.put("secret", WechatConstant.WECHAT_APP_SECRET);
    parameters.put("js_code", code);
    parameters.put("grant_type", "authorization_code");

    OAuthResult oAuthResult = messageSender.getMessageForObject(path, parameters, OAuthResult.class, false);
    if (oAuthResult.getOpenid() == null){
      throw new BusinessException(BusinessException.Code.OAUTH_PROCESS_ERROR, "OAuth异常,原因:" + oAuthResult.getErrmsg());
    }
    return oAuthResult;
  }

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

以上是微信端開發之如何登入小程式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn