Add Digest header

This commit is contained in:
DataHoarder 2022-01-16 21:28:09 +01:00
parent 55ffb6db8c
commit 5382255219

View file

@ -11,6 +11,7 @@ import (
"crypto/x509/pkix" "crypto/x509/pkix"
"database/sql" "database/sql"
"encoding/base32" "encoding/base32"
"encoding/base64"
"encoding/binary" "encoding/binary"
"encoding/hex" "encoding/hex"
"encoding/pem" "encoding/pem"
@ -138,8 +139,14 @@ func handleQueryRequest(ctx *fasthttp.RequestCtx, identifier cid.Cid, extraArgum
} }
defer cacheEntry.release() defer cacheEntry.release()
mh, _ := multihash.Decode(cacheEntry.Entry.Identifier.Hash())
ctx.Response.Header.Set("Accept-Ranges", "bytes") ctx.Response.Header.Set("Accept-Ranges", "bytes")
ctx.Response.Header.Set("ETag", cacheEntry.Entry.Identifier.String()) ctx.Response.Header.Set("ETag", cacheEntry.Entry.Identifier.String())
if mh.Code == multihash.SHA2_256 {
ctx.Response.Header.Set("Digest", fmt.Sprintf("sha-256=%s", base64.StdEncoding.EncodeToString(mh.Digest)))
}
//ctx.Response.Header.Set("X-IPFS-Path", fmt.Sprintf("/ipfs/%s", cacheEntry.Entry.Identifier.String()))
ctx.Response.Header.Set("Cache-Control", "public, max-age=2592000, immutable") ctx.Response.Header.Set("Cache-Control", "public, max-age=2592000, immutable")
filename := path.Base(cacheEntry.Entry.Path) filename := path.Base(cacheEntry.Entry.Path)