微信ウィジェットログインopenidおよび三方tokenの取得

1699 ワード

前言
このチュートリアルでは、「apifm-wxapi」モジュールに基づいて、小さなプログラムの開発を迅速に実現するために、以下の知識点を理解する必要があります.
『HelloWorldプロジェクトの作成』『apifm-wxapiを使用したクイック開発ウィジェット』『バックグラウンドを無料で登録し、専用ドメイン名を取得』
需要説明
ウィジェットのwxを利用する.login()メソッドは一時codeを取得する.一時codeを使用して「apifm-wxapi」でユーザーログインtokenを交換します.後期ユーザーの任意の権限ログインは、このtokenを提供してから操作する必要があります.ウィジェットの公式ドキュメントによると、セキュリティのため、appid、secret、accesstokenなどのウィジェット側に機密情報を暴露してはならない.ウィジェットを直接使用してログインするsession_keyはできるだけ避けるべきである.
予算
コスト不要、無料で実現
需要の実現
準備作業
この例はウィジェット開発なので、以下の作業を行う前に、バックグラウンドにウィジェットappidとsecretを配置する必要があります.
バックグラウンドに正しいウィジェットappidとsecretが構成されている場合にのみ、バックグラウンドではapiインタフェースにコミットされた暗号化されたユーザデータを正しく解析し、ユーザログインを完了することができます.
『バックグラウンド構成ウィジェットのappidとsecret』
まだユーザーを登録していない場合は、この例のログインを呼び出すと、ユーザーに存在しないエラーが返されます.ウィジェットユーザーに章を登録し、ユーザーの登録を完了した後、ウィジェットのログインを実現することができます.
「ウィジェットユーザー登録、バックグラウンドで登録ユーザーを表示および管理できる」
ウィジェットコードの作成:
const WXAPI = require('apifm-wxapi')
WXAPI.init('gooking')

Page({
  data: {

  },
  onLoad: function (options) {
    
  },
  login(e){
    if (!e.detail.userInfo) {
      //        
      return;
    }
    wx.login({
      success: function (res) {
        const code = res.code; //           code   ,          
        WXAPI.login_wx(code).then(function (res) {
          //         
          console.log(res)
        })
      }
    })
  }
})


WXAPI.Init('googing')このコードはあなたのプログラムをあなたのバックグラウンドにリンクして、その中でgoogingこれはあなたの専属ドメイン名です(前言の専属ドメイン名に関する章の説明を参照してください).
ログインに成功すると、現在のユーザーのuid、openid、tokentokenがウィジェットのstorageに直接保存することをお勧めします.後でユーザーがログインしてから操作する機能に触れて、このtokenを直接伝えるだけでいいです.
トラブルシューティング
「登録/ログインに失敗し、ユーザーopenidを取得できませんでした」
あなたの進歩を期待します!ありがとう!