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 配置的资料请关注脚本之家其它相关文章!

相关文章

  • Node.js中module.exports 和exports使用误区

    Node.js中module.exports 和exports使用误区

    本文主要介绍了Node.js中module.exports 和exports使用误区,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • nodejs body-parser 解析post数据实例

    nodejs body-parser 解析post数据实例

    下面小编就为大家带来一篇nodejs body-parser 解析post数据实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • 详解使用PM2管理nodejs进程

    详解使用PM2管理nodejs进程

    本篇文章主要介绍了详解使用PM2管理nodejs进程,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • 使用Nodejs 实现一个简单的 Redis客户端(推荐)

    使用Nodejs 实现一个简单的 Redis客户端(推荐)

    在nodejs中支持TCP连接的是net模块, 其中使用createConnection(config)或者直接new Socket(config)来初始化一个TCP连接,这篇文章主要介绍了用Nodejs 实现一个简单的 Redis客户端,需要的朋友可以参考下
    2022-11-11
  • node.js实现爬虫教程

    node.js实现爬虫教程

    这篇文章主要为大家介绍了node.js基础模块http、网页分析工具cherrio实现爬虫的相关资料,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-03-03
  • 基于uniapp与node.js实现的微信授权登录功能实例

    基于uniapp与node.js实现的微信授权登录功能实例

    前端一直是一块充满惊喜的土地,不仅是那些富有创造性的页面,还有那些惊赞的效果及不断推出的新技术,下面这篇文章主要给大家介绍了关于如何基于uniapp与node.js实现的微信授权登录功能的相关资料,需要的朋友可以参考下
    2023-05-05
  • 使用Fetch API执行GraphQL查询和变体问题

    使用Fetch API执行GraphQL查询和变体问题

    这篇文章主要介绍了使用Fetch API执行GraphQL查询和变体问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-04-04
  • node.js微信小程序配置消息推送的实现

    node.js微信小程序配置消息推送的实现

    这篇文章主要介绍了node.js微信小程序配置消息推送的实现,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-02-02
  • Node.js使用WebAssembly

    Node.js使用WebAssembly

    本文主要介绍了Node.js使用WebAssembly,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-05-05
  • node运行服务无响应的解决

    node运行服务无响应的解决

    这篇文章主要介绍了node运行服务无响应的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03

最新评论