node.js - Pembangunan Nodejs WeChat, video berjaya dimuat naik, tetapi ia tidak dikembalikan kepada pengguna
过去多啦不再A梦
过去多啦不再A梦 2017-06-30 09:57:20
0
2
1047

Menggunakan nodej untuk pembangunan WeChat
Yang dimuat naik adalah bahan sementara
Mekanisme balasan kepada video adalah seperti berikut:

if(content === '视频'){ var data = yield wechatApi.uploadMaterial('video',__dirname+'\public\video\3.mp4') console.log('data') console.log(data) reply = { type:'video', title:'回复的视频', description:'视频描述', mediaId:data.media_id } }

Selepas memasukkan "video" dalam klien WeChat mudah alih,
paparan latar belakang adalah seperti berikut:

Jika kod seperti ini muncul, ini bermakna muat naik berjaya, bukan? Walau bagaimanapun, mesej yang dipaparkan pada telefon bimbit ialah akaun rasmi tidak tersedia buat sementara waktu. Sila cuba sebentar lagi? kenapa begitu?
ps: Saya juga mendapati bahawa semasa memuat naik, ia telah dimuat naik tiga kali? Saya hanya menyiarkan satu "video", kenapa ia dimuat naik tiga kali?
Kod yang dimuat naik adalah seperti berikut:

Wechat.prototype.uploadMaterial = function(type,filepath){ var that = this; var form = { media: fs.createReadStream(filepath) } return new Promise(function(resolve,reject){ that .fetchAccessToken() .then(function(data){ console.log(data); var url = api.upload +'access_token='+data.access_token + '&type='+type; request({method:'POST',url:url,formData:form,json:true}).then(function(response){ var _data = response.body; //console.log(data); if(_data){ resolve(_data) } else{ throw new Error('upload Material fail') } }) .catch(function(err){ reject(err) }) }) }) }

Bagi antara muka muat naik, ia adalah seperti ini:
var wechatApi = Wechat baharu(config.wechat)
Ini ialah instantiasi di atas Data yang diperlukan untuk instantiasi tertentu diperoleh daripada konfigurasi.
Apabila memuat naik, gunakan kaedah wechatApi.uploadMaterial() untuk mencapai ini.

过去多啦不再A梦
过去多啦不再A梦

membalas semua (2)
typecho

1. Mengapa WeChat mengembalikan bahawa akaun rasmi tidak dapat menyediakan perkhidmatan buat sementara waktu
Mekanisme WeChat ialah selepas pengguna menghantar maklumat ke akaun rasmi, jika pelayan tidak kembali dalam masa 5 saat, ia akan meminta pihak rasmi akaun tidak dapat menyediakan perkhidmatan buat sementara waktu

Mekanisme 5 saat boleh diselesaikan dengan cara lain Pertama, kandungan kosong dikembalikan kepada WeChat agar tidak digesa, dan kemudian kandungan respons
yang betul dikembalikan kepada WeChat selepas program diproses

2 Masalah memuat naik tiga kali memerlukan anda menghantar kod antara muka muat naik dan kod pemprosesan muat naik, dan kemudian kami akan bercakap tentang cara menyelesaikannya

.

    滿天的星座
    • Saya juga mengalami masalah ini semasa saya sedang membangun Apabila pengguna menghantar perkataan "video", latar belakang memang memuat naik bahan video (kod muat naik ditulis tanpa masalah), tetapi masa memuat naik video adalah disebabkan. rangkaian atau WeChat Latar belakang itu sendiri kadangkala melebihi 5 saat (video yang lebih besar melebihi 5 saat dalam akaun ujian Pada masa ini, pelayan secara langsung mengembalikan mesej segera: Akaun rasmi ini tidak dapat menyediakan perkhidmatan buat sementara waktu). Ia akan mengambil sedikit masa untuk program mencetak data dan maklumat xml tangkapan skrin anda.

    • Jadi自动回复的时候上传视频素材pendekatan ini tidak sesuai Video harus dimuat naik lebih awal Pengguna menghantar "video", terus mendapatkan maklumat video yang telah dimuat naik dan membalas kepada pengguna.

      Muat turun terkini
      Lagi>
      kesan web
      Kod sumber laman web
      Bahan laman web
      Templat hujung hadapan
      Tentang kita Penafian Sitemap
      Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!