• koa2转移json文件地址


    一:首先创建中间件:response_data

    二:获取网页输入的后缀,并向本地服务器目录下相对应的文件发送ajax请求或者直接文件读取

    // 处理业务逻辑的中间件,读取某个json文件的数据
    const path = require('path')
    const fileUtils = require('../utils/file_utils')
    module.exports = async (ctx, next) => {
      // 根据url
      const url = ctx.request.url // /api/seller   ../data/seller.json
      let filePath = url.replace('/api', '') //  /seller
      filePath = '../data' + filePath + '.json'  // ../data/seller.json
      filePath = path.join(__dirname, filePath)
      try {
        const ret = await fileUtils.getFileJsonData(filePath)
        ctx.response.body = ret
      } catch (error) {
        const errorMsg = {
          message: '读取文件内容失败, 文件资源不存在',
          status: 404
        }
        ctx.response.body = JSON.stringify(errorMsg)
      }
     
      console.log(filePath)
      await next()
    }

    三:编写读取文件的方法

    // 读取文件的工具方法
    const fs = require('fs')
    module.exports.getFileJsonData = (filePath) => {
      // 根据文件的路径, 读取文件的内容
      return new Promise((resolve, reject) => {
        fs.readFile(filePath, 'utf-8', (error, data) => {
          if(error) {
            // 读取文件失败
            reject(error)
          } else {
            // 读取文件成功
            resolve(data)
          }
        })
      })
    }
  • 相关阅读:
    eclipse恢复界面默认设置
    文件夹的拷贝
    文件的输入输出
    十进制转二进制,八进制,十六进制(查表法)
    数组元素的查找(折半查找)
    C++几个小函数
    C++ 内部排序(一)
    C++实现链表
    C++输出IP地址段内的合法地址
    我看软件工程师的职业规划
  • 原文地址:https://www.cnblogs.com/instead-everyone/p/14659954.html
Copyright © 2020-2023  润新知