提交 3fd60460 作者: 方治民

fix: 补充 terrain layer.json 缓存路由

上级 ec733bd4
......@@ -65,3 +65,26 @@ module.exports.cache = async (req, res, next) => {
if (err) return next(err)
})
}
module.exports.layer = async (req, res, next) => {
const { v = 'DEFAULE' } = req.params
const object = `layer.json`
const uri = `https://data.mars3d.cn/terrain/${object}`
const src = path.resolve(`./data/cache/terrain/${v}/${object}`)
try {
if (!fs.existsSync(src)) {
await downloadFile(uri, src)
}
} catch (_) {
try {
if (fs.existsSync(src)) {
fs.rmSync(src)
}
} catch (__) {}
}
res.sendFile(src, function (err) {
if (err) return next(err)
})
}
......@@ -2,5 +2,6 @@ const router = require('express').Router()
const terrain = require('./controller')
router.get('/terrain/cache/:x/:y/:z', terrain.cache)
router.get('/terrain/cache/layer.json', terrain.layer)
module.exports = router
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论