跳至內容

ETag 中介軟體

使用此中介軟體,您可以輕鬆新增 ETag 標頭。

引入

ts
import { Hono } from 'hono'
import { etag } from 'hono/etag'

用法

ts
const app = new Hono()

app.use('/etag/*', etag())
app.get('/etag/abc', (c) => {
  return c.text('Hono is cool')
})

保留的標頭

304 回應必須包含與等效的 200 OK 回應中會傳送的標頭。預設標頭為 Cache-Control、Content-Location、Date、ETag、Expires 和 Vary。

如果您想要新增要傳送的標頭,您可以使用 retainedHeaders 選項和包含預設標頭的 RETAINED_304_HEADERS 字串陣列變數

ts
import { etag, RETAINED_304_HEADERS } from 'hono/etag'

// ...

app.use(
  '/etag/*',
  etag({
    retainedHeaders: ['x-message', ...RETAINED_304_HEADERS],
  })
)

選項

可選 weak: boolean

定義是否使用弱驗證。如果設定為 true,則會在值的前面加上 w/。預設值為 false

可選 retainedHeaders: string[]

您想要在 304 回應中保留的標頭。

在 MIT 許可證下發布。