first working

This commit is contained in:
6543 2022-08-28 16:36:56 +02:00
parent 8a5a3cee5d
commit dc023b81a8
No known key found for this signature in database
GPG Key ID: C99B82E40B027BAE
2 changed files with 8 additions and 4 deletions

View File

@ -28,6 +28,9 @@ func (c *Context) Context() stdContext.Context {
func (c *Context) Response() *http.Response {
if c.Req != nil {
if c.Req.Response == nil {
c.Req.Response = &http.Response{Header: make(http.Header)}
}
return c.Req.Response
}
return nil

View File

@ -17,9 +17,10 @@ import (
)
const (
headerContentType = "Content-Type"
headerETag = "ETag"
headerLastModified = "Last-Modified"
headerContentType = "Content-Type"
headerETag = "ETag"
headerLastModified = "Last-Modified"
headerIfModifiedSince = "If-Modified-Since"
)
// Upstream requests a file from the Gitea API at GiteaRoot and writes it to the request context.
@ -44,7 +45,7 @@ func (o *Options) Upstream(ctx *context.Context, giteaClient *gitea.Client) (fin
}
// Check if the browser has a cached version
if ifModifiedSince, err := time.Parse(time.RFC1123, string(ctx.Req.Response.Header.Get("If-Modified-Since"))); err == nil {
if ifModifiedSince, err := time.Parse(time.RFC1123, string(ctx.Response().Header.Get(headerIfModifiedSince))); err == nil {
if !ifModifiedSince.Before(o.BranchTimestamp) {
ctx.RespWriter.WriteHeader(http.StatusNotModified)
return true