koa2上傳文件及https配置實(shí)現(xiàn)教程
1. node 上傳文件
const fs = require('fs'); const path = require('path'); const file = ctx.request.files.files; // 獲取上傳文件 // 創(chuàng)建可讀流 const reader = fs.createReadStream(file.filepath); const fileName = file.originalFilename; const type = fileName.split('.')?.pop() || ''; // 獲取后綴名 const newFilename = `${file.newFilename}.${type}`; // file.newFilename 為系統(tǒng)重新命名的,可自行取 let filePath = path.join(__dirname, '../../upload/') + `${newFilename}`; // 設(shè)置文件的存放路徑 // 創(chuàng)建可寫流 const upStream = fs.createWriteStream(filePath); // 可讀流通過管道寫入可寫流 reader.pipe(upStream);
前端代碼
const uploadPhoto= async () => { let formData = new FormData(); formData.append('files',file); await uploadFile(formData); } export const uploadFile = (data) => request.post('http://api .xxx.com/api/upload', data, { headers: { 'Content-Type': 'application/x-www-form-urlencoded' } });
2. koa2配置https及域名ssl證書申請
2.1. 獲取證書(阿里云)
2.2. koa2 配置https
先裝koa-sslify和https依賴
npm install koa-sslify https --save
const sslify = require( "koa-sslify").default; const https = require('https'); app.use(sslify()); const options = { key: fs.readFileSync(path.join(__dirname, './config/ssl/www.xx.com.key')), cert: fs.readFileSync(path.join(__dirname, './config/ssl/www.xx.com.pem')), } // 將下載的證書放到服務(wù)器某處,并引入該地址 https.createServer(options, app.callback()).listen(Config.SERVER_PORT, () => { console.log('The serverBack is running at https://localhost:' + Config.SERVER_PORT); });
注意:
小程序調(diào)https接口,記得在小程序后臺添加白名單
以上就是koa2上傳文件及https配置實(shí)現(xiàn)教程的詳細(xì)內(nèi)容,更多關(guān)于koa2上傳文件https 配置的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Node.js中module.exports?和exports使用誤區(qū)
本文主要介紹了Node.js中module.exports?和exports使用誤區(qū),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01nodejs body-parser 解析post數(shù)據(jù)實(shí)例
下面小編就為大家?guī)硪黄猲odejs body-parser 解析post數(shù)據(jù)實(shí)例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-07-07使用Nodejs?實(shí)現(xiàn)一個簡單的?Redis客戶端(推薦)
在nodejs中支持TCP連接的是net模塊,?其中使用createConnection(config)或者直接new?Socket(config)來初始化一個TCP連接,這篇文章主要介紹了用Nodejs?實(shí)現(xiàn)一個簡單的?Redis客戶端,需要的朋友可以參考下2022-11-11基于uniapp與node.js實(shí)現(xiàn)的微信授權(quán)登錄功能實(shí)例
前端一直是一塊充滿驚喜的土地,不僅是那些富有創(chuàng)造性的頁面,還有那些驚贊的效果及不斷推出的新技術(shù),下面這篇文章主要給大家介紹了關(guān)于如何基于uniapp與node.js實(shí)現(xiàn)的微信授權(quán)登錄功能的相關(guān)資料,需要的朋友可以參考下2023-05-05使用Fetch API執(zhí)行GraphQL查詢和變體問題
這篇文章主要介紹了使用Fetch API執(zhí)行GraphQL查詢和變體問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-04-04node.js微信小程序配置消息推送的實(shí)現(xiàn)
這篇文章主要介紹了node.js微信小程序配置消息推送的實(shí)現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-02-02