typescript - 如何使用 Deno (oak) 返回 html 或 json?
问题描述
我见过:如何使用 deno 返回 html 或 json?但我需要 Oak 的答案 - 在下面发布。
解决方案
这将是这样的:
import { Application } from 'https://deno.land/x/oak/mod.ts'
import { Router } from 'https://deno.land/x/oak/mod.ts'
const port = 8000
// Handler
const getTestResponse = ({ response }: { response: any }) => {
response.status = 200
response.headers.set("Content-Type", "application/json") // set to html if you want
response.body = {
data: "test"
}
}
const app = new Application()
// Router
const router = new Router()
router.get('/api/v1/test', getTestResponse)
app.use(router.routes())
app.use(router.allowedMethods())
console.log(`Server running on port ${port}`)
await app.listen({ port })
- 默认情况下使用 JSON 作为响应(无需像示例中那样显式设置) - 我只是想表明您可以更改它。
注意:请将处理程序、路由和主代码拆分到现实世界中的不同模块,这样别人就不会生你的气了:)
推荐阅读
- performance - 循环可以影响其他循环的复杂性而不是在其中吗?
- firebase - 如何比较颤振中保存在毫秒SinceEpoch上的日期时间?
- java - 休眠 - java.lang.Object;不能转换为
- node.js - 如何在nest.js 中使用全局变量?
- eclipse - 在 http://dl.microsoft.com/eclipse/ 找不到存储库
- azure - 在 Docker 中使用 Selenium 测试运行 Azure 管道
- python - 在 django 中使用块内容时标签有问题
- php - register_activation_hook 不起作用 - Wordpress
- swiftui - 使用 SwiftUI 修复了 iOS 14 小部件中的字体大小
- jquery - 用回车键搜索