appendResponseHeader(event, name, value)
按名称附加响应标头。
示例:
ts
export default defineEventHandler((event) => {
appendResponseHeader(event, 'content-type', 'text/html')
})
appendResponseHeaders(event, headers)
附加响应标头。
示例:
ts
export default defineEventHandler((event) => {
appendResponseHeaders(event, {
'content-type': 'text/html',
'cache-control': 'no-cache',
})
})
clearResponseHeaders(event, headerNames?)
删除所有响应标头,或仅删除 headerNames 数组中指定的响应标头。
示例:
ts
export default defineEventHandler((event) => {
clearResponseHeaders(event, ['content-type', 'cache-control']) // Remove content-type and cache-control headers
})
defaultContentType(event, type?)
设置响应状态代码和消息。
getResponseHeader(event, name)
getResponseHeaders(event)
获取响应标头对象。
示例:
ts
export default defineEventHandler((event) => {
const headers = getResponseHeaders(event)
})
getResponseStatus(event)
获取当前响应状态代码。
示例:
ts
export default defineEventHandler((event) => {
const status = getResponseStatus(event)
return `Status: ${status}`
})
getResponseStatusText(event)
获取当前响应状态消息。
示例:
ts
export default defineEventHandler((event) => {
const statusText = getResponseStatusText(event)
return `Status: ${statusText}`
})
iterable(iterable)
迭代块源并按顺序返回每个块。支持混合异步工作和发出块。
每个块必须是字符串或缓冲区。
对于生成器(产生)函数,返回值与产生的值相同。
示例:
ts
return iterable(async function* work() {
// Open document body
yield '<!DOCTYPE html>\n<html><body><h1>Executing...</h1><ol>\n'
// Do work ...
for (let i = 0; i < 1000) {
await delay(1000)
// Report progress
yield `<li>Completed job #`
yield i
yield `</li>\n`
}
// Close out the report
return `</ol></body></html>`
})
async function delay(ms) {
return new Promise(resolve => setTimeout(resolve, ms))
}
noContent(event, code?)
用空的有效载荷进行响应。
示例:
ts
export default defineEventHandler((event) => {
return noContent(event)
})
redirect(event, location, code)
向客户端发送重定向响应。
它将“location”标头添加到响应中,并默认将状态代码设置为 302。
在正文中,它发送一个带有元刷新标记的简单 HTML 页面,以便在标头被忽略的情况下重定向客户端。
示例:
ts
export default defineEventHandler((event) => {
return redirect(event, 'https://example.com')
})
示例:
ts
export default defineEventHandler((event) => {
return redirect(event, 'https://example.com', 301) // Permanent redirect
})
removeResponseHeader(event, name)
按名称删除响应标头。
示例:
ts
export default defineEventHandler((event) => {
removeResponseHeader(event, 'content-type') // Remove content-type header
})
setResponseHeader(event, name, value)
按名称设置响应标头。
示例:
ts
export default defineEventHandler((event) => {
setResponseHeader(event, 'content-type', 'text/html')
})
setResponseHeaders(event, headers)
设置响应标头。
示例:
ts
export default defineEventHandler((event) => {
setResponseHeaders(event, {
'content-type': 'text/html',
'cache-control': 'no-cache',
})
})
setResponseStatus(event, code?, text?)
设置响应状态代码和消息。
示例:
ts
export default defineEventHandler((event) => {
setResponseStatus(event, 404, 'Not Found')
return 'Not Found'
})
writeEarlyHints(event, hints)
向客户端写入“HTTP/1.1 103 Early Hints”。