koa2上传文件及https配置实现教程

 更新时间:2023年06月25日 10:37:13   作者:WiFi_Uncle  
这篇文章主要为大家介绍了koa2上传文件及https配置实现教程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

1. node 上传文件

const fs = require('fs');
    const path = require('path');
    const file = ctx.request.files.files; // 获取上传文件
    // 创建可读流
    const reader = fs.createReadStream(file.filepath);
    const fileName = file.originalFilename;
    const type = fileName.split('.')?.pop() || ''; // 获取后缀名
    const newFilename = `${file.newFilename}.${type}`; // file.newFilename 为系统重新命名的,可自行取
    let filePath = path.join(__dirname, '../../upload/') + `${newFilename}`; // 设置文件的存放路径
    // 创建可写流
    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')),
} // 将下载的证书放到服务器某处,并引入该地址

https.createServer(options, app.callback()).listen(Config.SERVER_PORT, () => {
  console.log('The serverBack is running at https://localhost:' + Config.SERVER_PORT);
});

注意:

小程序调https接口,记得在小程序后台添加白名单

以上就是koa2上传文件及https配置实现教程的详细内容,更多关于koa2上传文件https 配置的资料请关注脚本之家其它相关文章!

相关文章

  • nodejs更改项目端口号的方法

    nodejs更改项目端口号的方法

    今天小编就为大家分享一篇nodejs更改项目端口号的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • Node.js与Sails ~项目结构与Mvc实现及日志机制

    Node.js与Sails ~项目结构与Mvc实现及日志机制

    Sails是一个Node.js的中间架构,很方便的帮助我们搭建web应用程序。还有node.js与Sails日志机制在本文中也讲到了,需要的朋友可以一起学习下
    2015-10-10
  • 详解NodeJs项目 CentOs linux服务器线上部署

    详解NodeJs项目 CentOs linux服务器线上部署

    这篇文章主要介绍了NodeJs项目 CentOs linux服务器线上部署,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09
  • 使用 node.js 模仿 Apache 小部分功能

    使用 node.js 模仿 Apache 小部分功能

    这篇文章主要介绍了使用 node.js 模仿 Apache 小部分功能,文中给大家讲到了服务端渲染与客户端渲染之间的区别,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • 深入解析Nodejs中的大文件读写

    深入解析Nodejs中的大文件读写

    这篇文章主要介绍了深入解析Nodejs中的大文件读写,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-09-09
  • 基于npm install或run时一些报错的解决方案

    基于npm install或run时一些报错的解决方案

    这篇文章主要介绍了基于npm install或run时一些报错的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • nodejs环境快速操作mysql数据库的方法详解

    nodejs环境快速操作mysql数据库的方法详解

    这篇文章主要介绍了nodejs环境快速操作mysql数据库的方法详解,需要的朋友可以参考下
    2021-03-03
  • Node.js Process对象详解

    Node.js Process对象详解

    本文详细讲解了Node.js Process对象,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-08-08
  • Linux系统中如何下载、解压和安装特定版本的Node.js

    Linux系统中如何下载、解压和安装特定版本的Node.js

    Nodejs版本坑众多,不同应用可能需要不同版本,下面这篇文章主要给大家介绍了关于Linux系统中如何下载、解压和安装特定版本的Node.js的相关资料,需要的朋友可以参考下
    2024-01-01
  • node.js文件的复制、创建文件夹等相关操作

    node.js文件的复制、创建文件夹等相关操作

    这篇文章主要给大家介绍了node.js文件的复制、创建文件夹等相关操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02

最新评论