如何使用 Koa 提供静态文件?

2024-02-16

我想在我的项目中实现通用链接,并且需要通过 Koa 提供 json,这是一个名为苹果应用程序站点关联.

我的文件位于/assets/apple-app-site-association/apple-app-site-association folder.

我担心的是我无法访问此 https://myprojectlink/apple-app-site-association。

我此刻拥有的:

const path = require("path");
const Koa = require("koa");
const mount = require("koa-mount");
const serve = require("koa-better-serve");

app.use(mount("/apple-app-site-association", serve(path.resolve(__dirname,"../../../assets/apple-app-site-association/apple-app-site-association"))));

我找不到,似乎我无法以正确的方式提供服务。

我能做些什么?

预先非常感谢您。


The 相思树静态 https://github.com/koajs/static模块就是您正在寻找的。您可以使用它来将单个文件或整个目录提供给给定路径。以下是一些应该有所帮助的示例:

提供文件服务koa-static

要提供文件服务,只需传递koa-static中间件到 koa 的中间件堆栈app.use().

服务整个目录

在这里我们为大家服务/static目录

const Koa = require('koa')
const serve = require('koa-static')
const path = require('path')

const app = new Koa()
app.use(serve(path.join(__dirname, '/static')))

app.listen(3000)

提供单个文件

这里我们提供单个文件,例如data.json文件里面的/static目录

const Koa = require('koa')
const serve = require('koa-static')
const path = require('path')

const app = new Koa()
app.use(serve(path.join(__dirname, '/static/data.json')))

app.listen(3000)

在给定路径上提供目录或文件

Use 相思木安装 https://github.com/koajs/mount安装相思树静态 https://github.com/koajs/static到给定的路径。例如,这里我们挂载整个/static要提供的目录/public path

const Koa = require('koa')
const serve = require('koa-static')
const mount = require('koa-mount')
const path = require('path')

const app = new Koa()
app.use(mount('/public ',serve(path.join(__dirname, '/static'))))

app.listen(3000)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 Koa 提供静态文件? 的相关文章

随机推荐

  • jQuery UI Datepicker onchange 事件问题

    我有一个 JS 代码 当您更改字段时 它会调用搜索例程 问题是我找不到任何在 Datepicker 更新输入字段时触发的 jQuery 事件 由于某种原因 当 Datepicker 更新字段时不会调用更改事件 当日历弹出时 它会改变焦点 所
  • .git 文件夹不包含什么?

    来自git site http git scm com book en v2 Git Internals Plumbing and Porcelain 强调我的 当您在新目录或现有目录中运行 git init 时 Git 会创建 git 目
  • iOS应用程序发布-以不同作者姓名发布

    我一直在家庭成员 Apple 开发者帐户下开发和测试 iPhone 应用程序 他支付了该帐户的费用 并将其注册在他的公司名下 当需要发布时 它会出现在应用商店 以及发布作者姓名的其他地方 中 以他的名字还是他的公司名称 这可以改变吗 是否可
  • wordCounts.dstream().saveAsTextFiles("本地文件系统路径", "txt");不写入文件

    我正在尝试将 JavaPairRDD 写入本地系统中的文件中 代码如下 JavaPairDStream
  • 从 Joomla 3 中的 CSV/Excel 文件导入用户

    我需要在 Joomla 3 2 系统中创建大约 100 个用户 有没有一种方法可以自动完成此操作且成本不高 我认为最好的组件是这样的 CSV 改进 http www csvimproved com http www csvimproved
  • 当两个图像碰撞时如何生成片尾画面?

    当两个图像碰撞时如何生成片尾画面 我正在制作一个带有火柴人的应用程序 你可以使用非常灵敏的加速度计来移动 因此 如果它达到这些峰值 UIImages 它将生成最终屏幕 如何让应用程序检测到这种碰撞 然后生成结束屏幕 我确信您知道这两个图像的
  • CSS3 转换与 Javascript 后备

    是否有一个 javascript 框架可以使用 CSS3 转换来实现更改不透明度或移动元素等效果 但如果不支持 则会回退到使用 javascript setInterval setTimeout 查看 YUI 3 Transition 模块
  • iOS 自定义表格视图单元格在编辑模式下调整大小

    编辑时UITableView红色圆形按钮和删除按钮与自定义单元格重叠 我们如何调整自定义单元格的大小 为红色圆形按钮和删除按钮留出空间 使用此代码 您可以根据编辑单元格的方式和所处阶段来执行不同的任务 我对代码进行了大量注释 因为我花了很长
  • 在 Twitter Bootstrap 中,如何解除模式对话框关闭事件的绑定?

    我有一个函数绑定到隐藏模式对话框的操作 我使用的代码类似于已接受的答案this https stackoverflow com questions 8363802 bind a function to twitter bootstrap m
  • 如何在 Excel 中绕过 64k 行限制

    我希望允许用户操作可能有多达 400 000 行的表 每行约 200 个字符 最大数据总量为 80MB 作为第一个近似值 我正在考虑以某种方式为用户提供一个 csv 文件以粘贴到电子表格中 首先 尝试这样的事情是否有实际意义 例如 一个电子
  • Flutter:在底部导航栏上显示模态底部表单/替换底部导航栏(无障碍)

    我正在尝试为我自己的 Flutter 应用程序复制一些类似于 Google 地图的功能 同样基于地图 我希望用户能够选择兴趣点并可以选择导航到该位置 当他们点击 导航 时 我希望底部工作表出现在现有底部导航栏的位置 或顶部 用于基于选项卡的
  • 放大画布而不修改特定子控件的大小

    所以我意识到我正在冒险超出 Canvas 的预期用途 并且可能不得不想出一个更加手动的解决方案 然而 由于在 WPF 方面没有太多经验 我希望可能有一些解决方案可以让我继续使用 Canvas 控件及其免费提供的功能 该问题围绕用于放大和缩小
  • C# 项目的目标是“.Net Framework,版本=v4.5”,该计算机未安装[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 今天下午我正在使用 Windows 8 上安装的 VS 2012 开发一个 C 项目 它运行良好 我在回家之前将代码上传到 TFS 但是当我
  • Python多处理,无法pickle thread.lock(pymongo)

    我有一个具有以下方法的类 def get add new links self max num links self get links m2 max num links processes mp cpu count pool mp Poo
  • iOS 应用程序如何安装在设备上

    我有兴趣了解 iOS 应用程序如何安装在设备上的技术细节 我来解释一下我的情况 我的应用程序的 ipa 和 plist 在服务器上 我制作了一个使用 itms services 指向 plist 文件的下载网页 我尝试在我朋友的 iPhon
  • 石英 2D 中的“斜角”形状

    我熟悉 Quartz 2D 绘图的一些基础知识 例如绘制基本形状和渐变等 但我不确定如何绘制具有 斜角 外观的形状 如下所示 斜角圆 http www shaggyfrog com junk beveled circle jpg http
  • HttpContext.Current.Session 为空

    我有一个网站 在类库内有一个自定义缓存对象 所有项目都运行 NET 3 5 我想将此类转换为使用会话状态而不是缓存 以便在应用程序回收时保留状态服务器中的状态 但是 当我访问 Global asax 文件中的方法时 此代码会引发异常 Htt
  • javax.validation.NotBlank 缺少验证器

    我要求在公共 api 模块 多模块项目 中我不能使用任何类型的 hibernate 验证注释 所以我确实使用了 javax validation 中的一个 这是可以接受的 当我想验证包含 NotBlank 注释的域对象 我使用 vaadin
  • vertica-python 复制本地时出错

    我用这个代码 复制本地 在Python上垂直7 1 conn info host 192 168 1 1 port 5433 user dbadmin password xxxxxx database db connection verti
  • 如何使用 Koa 提供静态文件?

    我想在我的项目中实现通用链接 并且需要通过 Koa 提供 json 这是一个名为苹果应用程序站点关联 我的文件位于 assets apple app site association apple app site association f