欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

node+axios實(shí)現(xiàn)服務(wù)端文件上傳示例

 更新時間:2022年06月28日 08:34:03   作者:天問  
這篇文章主要介紹了node+axios實(shí)現(xiàn)服務(wù)端文件上傳示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

最近調(diào)研企業(yè)wx集成H5應(yīng)用,其中有一個發(fā)送圖文消息,需要上傳圖片到臨時素材庫。之前做過文件上傳到阿里云、七牛云都是服務(wù)端提供封裝好的文件上傳接口,在客戶端使用ajax的方式上傳。所以就來踩踩坑,使用node+axios實(shí)現(xiàn)服務(wù)端文件上傳。

一、接口文檔介紹

請求方式:POST(HTTPS)

請求地址:https://qyapi.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE

  • 使用multipart/form-data POST上傳文件, 文件標(biāo)識名為”media”。
  • POST的請求包中,form-data中媒體文件標(biāo)識,應(yīng)包含有 filename、filelength、content-type等信息。
  • 參數(shù)說明:
參數(shù)必須說明
access_token調(diào)用接口憑證
type媒體文件類型,分別有圖片(image)、語音(voice)、視頻(video),普通文件(file)

二、文件上傳

2-1.初始化項(xiàng)目

# 創(chuàng)建目錄
mkdir upload-demo
# 進(jìn)入upload-demo目錄
cd upload-demo
# npm 初始化
npm init -y
# 創(chuàng)建app.js
touch app.js

2-2.安裝插件依賴

axios:是一個基于 promiseHTTP 庫,可以用在客戶端瀏覽器和服務(wù)端node.js 中。

form-data:是創(chuàng)建可讀multipart/form-data流的庫??捎糜谙蚱渌?Web 應(yīng)用程序提交表單和文件上傳。

npm i -S axios form-data

2-3.上傳核心代碼

// app.js
const fs = require('fs')
const FormData = require('form-data')
const axios = require('axios')
;(()=>{
    let formData = new FormData();
    let imgFiles = fs.createReadStream('./test.jpg')    // 根目錄下需要有一個test.jpg文件
    formData.append('media', imgFiles);
    axios({
        url: 'https://qyapi.weixin.qq.com/cgi-bin/media/upload',
        method: 'POST',
        params: {
            access_token: 'ACCESS_TOKEN',   // ACCESS_TOKEN 需要替換為真實(shí) token
            type: 'image',   // 這里以上圖片為例
        },
        data: formData,
        headers: {
            'Content-Type': 'multipart/form-data', // 必須要設(shè)置
        },
    }).then(res=>{
        console.log(res.data)
    })
})();

2-4.執(zhí)行腳本

node app.js

不出意外會輸入以下內(nèi)容:

{
   "errcode": 0,
   "errmsg": "",
   "type": "image",
   "media_id": "1G6nrLmr5EC3MMb_-zK1dDdzmd0p7cNliYu9V5w7o8K0",
   "created_at": "1380000000"
}

其中media_id就是上傳到素材庫的媒體文件唯一標(biāo)識,發(fā)送圖文消息時需要用到。

以上就是node+axios實(shí)現(xiàn)服務(wù)端文件上傳示例的詳細(xì)內(nèi)容,更多關(guān)于node+axios服務(wù)端文件上傳的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論