midway icon indicating copy to clipboard operation
midway copied to clipboard

前后端一体化项目中,后端部分如何使用静态资源

Open lide14 opened this issue 3 years ago • 9 comments

按照https://www.yuque.com/midwayjs/midway_v2/static_file 文档中的配置,在单独的后端项目中可以正常下载静态资源。

想了解下在前后端一体化项目中该怎么在后端配置静态资源,按照文档增加了staticCache后没有生效。 谢谢

lide14 avatar Jul 09 '21 06:07 lide14

用的 @midwayjs/hooks v1 还是 v2 呢?

Lxxyx avatar Jul 09 '21 06:07 Lxxyx

用的 @midwayjs/hooks v1 还是 v2 呢?

"@midwayjs/hooks": "^2.0.0",

lide14 avatar Jul 09 '21 06:07 lide14

是 Serverless 还是用的 Koa 呢?Koa 的话应该在 configuration.ts 的 Hooks() 中配置全局中间件就可以了

Lxxyx avatar Jul 09 '21 08:07 Lxxyx

是 Serverless 还是用的 Koa 呢?Koa 的话应该在 configuration.ts 的 Hooks() 中配置全局中间件就可以了

您好,是serverless

image

lide14 avatar Jul 09 '21 08:07 lide14

可以参考:https://github.com/midwayjs/hooks/blob/7663dbb9de9ed8e0b4d5a7b3d9a8d06a8f1a6710/packages/hooks-core/src/component/gateway/http.ts#L116-L130

其中的 baseDir 可以通过 app.getBaseDir 获得

Lxxyx avatar Jul 09 '21 08:07 Lxxyx

可以参考:https://github.com/midwayjs/hooks/blob/7663dbb9de9ed8e0b4d5a7b3d9a8d06a8f1a6710/packages/hooks-core/src/component/gateway/http.ts#L116-L130

其中的 baseDir 可以通过 app.getBaseDir 获得

多谢,我感觉这个里面和我写的思路差不多,都是添加到中间件里去 只不过在这个里面在createApi的时候,有一个通配的路径“/”。在纯后端的项目中也需要增加这么一个通配路径@Get('/public/') 前后端一体化项目中好像不能写成这样的,只能是固定的方法名

lide14 avatar Jul 12 '21 02:07 lide14

可以参考:https://github.com/midwayjs/hooks/blob/7663dbb9de9ed8e0b4d5a7b3d9a8d06a8f1a6710/packages/hooks-core/src/component/gateway/http.ts#L116-L130

其中的 baseDir 可以通过 app.getBaseDir 获得

按照文档https://www.yuque.com/midwayjs/midway_v2/hooks_route 中的通配路由,增加了一个通配路由文件,貌似可以了,我试试看,多谢

lide14 avatar Jul 12 '21 05:07 lide14

按照文档https://www.yuque.com/midwayjs/midway_v2/hooks_route 中的通配路由,增加了一个通配路由文件,貌似可以了,我试试看,多谢

我写了一个 纯前端 sls 的项目 可以参考看看 https://github.com/mowatermelon/mw2-antd/

mowatermelon avatar Sep 14 '21 02:09 mowatermelon

image 为什么取不到这个方法呢

zoubeihua avatar Sep 02 '23 08:09 zoubeihua