小さな遭遇アプレットコード生成機能の最近の開発は、通常の動作は、インタフェースによって要求されます。
POST https://api.weixin.qq.com/wxa/getwxacode?access_token=ACCESS_TOKEN
しかし、今日、突然、異常な方法を行ってみたい、私たちは、クラウドの開発とプレイを使用することにしました。
いくつかの単語の男は、コードそれ、言いました!
wxml:
< ボタンbindstap = "creatCodeは" >クリック</ ボタン>
クラウド機能、私はのgetcode関数を定義し、クラウドconfig.jsonファイルの権限の下で関数の最初の呼び出しで設定されています
config.json:
openapi.wxacode.get
そして、内部のindex.jsロジックコードを記述します。
index.js:
constの雲=( 'WX-サーバー-SDK'が必要です) cloud.init() exports.main =非同期(イベント、コンテキスト)=> { 試み{ constの結果 = のawait cloud.openapi.wxacode.get({ パス:「のページ/インデックス/インデックス」、 幅: 430 }) はconsole.log(結果) リターン結果 } キャッチ(ERR){ にconsole.log(ERR) 戻りERR } }
最後に、上記の方法creatCodeクラウド機能を呼び出します
JS:
creatCode(){ にconsole.log( '开始生成小程序码' ) wx.cloud.callFunction({ 名: 'のgetcode' 、 データ:{}、 成功:RES => { にconsole.log(RES) させファイルマネージャ = WX .getFileSystemManager(); filePathにせ = wx.env.USER_DATA_PATH + '/ qr.jpg' ; fileManager.writeFile({ filePathに:filePathに、 エンコード: "バイナリ" 、 データ:res.result.buffer、 成功:RES => { コンソール.logの(RES) WX .previewImage({ //イメージのプレビュー のURL:[filePathに] }) } }) }、 失敗:ERR => { } }) }
公式文書、クラウドデータは、データオブジェクトとデータ型には、バイナリで関数リターンをチェック、ArrayBufferは、物事のタイプです
ここでBASE64に直接ピット、このタイプに遭遇して、開発ツールが出てすることができ、マイクロチャネル上の画像タブが、GGの実マシン上、直接空白を呼び出します
このデータは、一時ファイルにコストを維持する必要があります
によるので、
聞かせてファイルマネージャ= wx.getFileSystemManager()
fileManager.writeFile
バイナリデータを保存します。
逃げます!