我想在我的项目中实现通用链接,我需要通过Koa提供一个json,它是一个名为apple-app-site-association.的静态文件。
我的文件位于/assets/apple-app-site-association/apple-app-site-association文件夹中。
我担心的是我无法访问这个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"))));我没有被找到,似乎我不能用正确的方式为它服务。
我能做什么?
先谢谢你。
发布于 2021-02-25 22:20:59
koa-静态模块是您要寻找的。您可以使用它为给定路径提供单个文件或整个目录。以下是几个应该有所帮助的例子:
使用koa-static服务文件
为了提供文件,只需将koa-static中间件通过app.use()传递到koa的中间件堆栈。
为整个目录服务
这里我们为整个/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)在给定路径上服务目录或文件
使用koa-坐骑将koa-静态挂载到给定的路径。例如,这里我们将整个/static目录挂载到/public路径上。
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)发布于 2021-01-13 00:19:13
serve (Koa Serve)和大多数用于节点框架的静态服务器中间件一样,采用指向目录的路径,而不是指向单个文件的路径。您还可以摆脱mount()调用,koa-mount用于将其他Koa应用程序安装为中间件。
app.use(serve(path.resolve(__dirname,"../../../assets/apple-app-site-association/")));
发布于 2021-02-03 06:50:40
静态文件服务的官方方法是https://www.npmjs.com/package/koa-static,您可以在那里看到文档。
https://stackoverflow.com/questions/65685594
复制相似问题