鍍金池/ 問答/HTML/ 使用nodejs如何調(diào)用微信小程序的【獲取臨時(shí)素材】接口,并下載素材到本地?

使用nodejs如何調(diào)用微信小程序的【獲取臨時(shí)素材】接口,并下載素材到本地?

我想使用nodejs調(diào)用微信小程序的【獲取臨時(shí)素材】接口,下載素材到本地。目前我已經(jīng)寫了一個(gè)邏輯,能夠下載到本地,但是文件格式只能制定為'jpeg',假設(shè)素材類型不知道的情況下,怎么進(jìn)行下載?請(qǐng)問有人知道怎么處理嗎?可以方便貼一下代碼嗎?
貼上我的代碼

  * downloadPic(url = '', path = '') {
    // url: 網(wǎng)絡(luò)連接
    // path: 存放的目錄
    // TODO 只能下載jpg圖片,其他形式待定
    url = {url: url}
    const fs = require('fs')
    const request = require('request')
    // 目錄不存在先創(chuàng)建目錄
    if (!fs.existsSync(path)) {
      fs.mkdirSync(path);
    }
    path = path + '/' + this.getRandom(20) + '.jpeg' 
    yield new Promise((resolve, reject) => {  
      request  
        .get(url)  
        .on('response', (response) => {  
          console.log("img type:", response.headers['content-type'])  
        })  
        .pipe(fs.createWriteStream(path))  
        .on("error", (e) => {  
          console.log("pipe error", e)  
          resolve('');  
        })  
        .on("finish", () => {  
          console.log("finish");  
          resolve("ok");  
        })  
        .on("close", () => {  
          console.log("close");  
        })  
    })
    // 返回圖片路徑
    return path.replace('app/', '')
  }
回答
編輯回答
別瞎鬧

先存成tmp文件,然后根據(jù)content-type這個(gè)header,根據(jù)content-type對(duì)照表之類的東西,改成正確的后綴即可

2017年3月16日 11:05