hapi.js文件上传

前端部分:使用axios上传FormData格式的文件

     const formData = new FormData();
     formData.append("file", options.file);
     formData.append("name", options.file.name);
     upload(formData).then((res) => {});

后端部分:路由配置multipart.output设置为data

{
        path: '/upload',
        method: 'POST',
        options: {
            payload: {
                maxBytes: 1024 * 1024 * 100,
                parse: true,
                output: 'data',
                allow: 'multipart/form-data',
                multipart: {
                    output: 'data'
                }
            }
        },
        handler: (request, h) => upload(request, h)
  }

upload.ts

import { Request, ResponseToolkit } from '@hapi/hapi'
import fs from 'fs'
import path from 'path'
export const upload = (request:Request, h:ResponseToolkit) => {
    const { file, name } = request.payload as any
    fs.writeFile(path.resolve() + `/static/imags/${name}`, file, (err) => {
        if (err)console.log(err, 'rr')
    })
    return 1
}

hapi静态内容:
参考链接

静态内容展示

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容