響應頭中的 ETag 值是如何生成的

2022-01-18 16:17:49 字數 1204 閱讀 8185

要求

content-length: 612

last-modified: tue, 23 apr 2019 10:18:21 gmt

etag: "5cbee66d-264"

計算規則

new date(parseint('5cbee66d', 16) * 1000).tojson()

"2019-04-23t10:18:21.000z"

> parseint('264', 16)

612

靜態資源一般都只是生成的長度-時間戳而已,

動態介面可以配置,可以算hash。

return generatehash(body, encoding); // consider the function is defined

});核心**詳細見這裡,擷取一小段:

function etag (entity, options) 

function entitytag (entity)

// compute hash of entity

var hash = crypto

.createhash('sha1')

.update(entity, 'utf8')

.digest('base64')

.substring(0, 27)

// compute length of entity

var len = typeof entity === 'string'

? buffer.bytelength(entity, 'utf8')

: entity.length

return '"' + len.tostring(16) + '-' + hash + '"'

}function stattag (stat)

真實線上靜態資源檔案的etag。

etag: "713-1551786316000"

last-modified: tue, 05 mar 2019 11:45:16 gmt

etag: "sadqg/hfsklgqeec+r/szg=="

last-modified: thu, 16 jan 2020 06:17:05 gmt

而 koa 的 etag 外掛程式底層還是 express 的 etag。

mvc下是如何傳值的

最近在開發乙個專案,用的是 mvc框架,現將 mvc會用到的常用傳值方法總結如下 在講傳遞引數方法之前,先簡單介紹一下mvc 路由及執行機制。首先,web 瀏覽器向伺服器傳送一條url 請求,如http hostname controllername actionname parameters 其次...

python生成詞向量 詞向量是如何生成的

遇到這個問題的時候,網上有個很經典的 word2vec的數學原理 上面一文解釋得很詳細,但小白入門會看得很蒙逼,不知道初始向量值是怎麼來的,全域性來呼叫是怎樣執行的。所以我就希望寫一篇文章,舉一些例子,去闡述這個詞向量到底是怎樣產生的。word2vec的數學原理 傳送門 word2vec數學原理 這...

RPN網路的錨是如何生成的

anchor這個問題,我最初也沒弄懂。剛剛看完rbg大神的原始碼,終於明白了,來回答一發,如果有不對的地方請大家指出。以vgg 16改造的faster r cnn為例。py faster r cnn的 model pascal voc vgg16 faster rcnn alt opt faster...