php - Laravel:静态文件名问题的路由
问题描述
我想用这种方式为带有版本控制的静态文件制作一种 api:
public/js
public/js
├ script-1.1.js
├ script-1.2.js
├ ...
└ script-2.1.js
routes/web.php
Route::get('/js/{version}/script.js', function ($version) {
return File::get(public_path() . '/js/script-'.$version.'.js');
})->where('version', '^\d+(\.\d+)*$');
问题是 Laravel 无论如何都会忽略这条路线并试图找到静态文件。
即这将返回 404 页面:
Route::get('/js/test/script.js', function() {
return response('Echo', 200)
->header('Content-Type', 'text/plain');
});
但这将返回“回声”:
Route::get('/js/test', function() {
return response('Echo', 200)
->header('Content-Type', 'text/plain');
});
如何在最后有文件名的 URL 上执行路由?我仍然找不到类似的问题或任何示例。
解决方案
推荐阅读
- angular - 我可以在没有虚拟滚动的情况下使用 Angular PrimeNG treeTable 的惰性选项吗?
- java - JsonSerializer
当有 JsonSerializer 时,() 不适用于 java.util.Date 字段 () - bash - 如何在bash中显示多个文件的尾部
- c# - 如何在统一中创建一个支持 html 的模式弹出窗口(链接必须是可点击的)
- java - SecretKey.getEncoded() 如何返回 PBE 生成的密钥的明文密码?
- azure - 如何在 Azure Service Fabric Explorer 中显示事件消息
- http - 使烧瓶返回响应头 http1.1 而不是 http1.0
- python - 模糊匹配两个数据帧并加入结果
- deep-learning - 为 YOLOv3 标注 230k 图像
- swiftui - SwiftUI actionSheet 变成 .tabItem