diff --git a/build/www/.gitignore b/build/www/.gitignore index 5e46596..e69de29 100644 --- a/build/www/.gitignore +++ b/build/www/.gitignore @@ -1 +0,0 @@ -cache \ No newline at end of file diff --git a/internal/nodes/api_stream.go b/internal/nodes/api_stream.go index 03532be..c1b9ef8 100644 --- a/internal/nodes/api_stream.go +++ b/internal/nodes/api_stream.go @@ -372,8 +372,17 @@ func (this *APIStream) handlePreheatCache(message *pb.NodeStreamMessage) error { _ = resp.Body.Close() }() + // 检查最大内容长度 + maxSize := storage.Policy().MaxSizeBytes() + if maxSize > 0 && resp.ContentLength > maxSize { + locker.Lock() + errorMessages = append(errorMessages, "request failed: the content is too larger than policy setting") + locker.Unlock() + return + } + expiredAt := time.Now().Unix() + 8600 - writer, err := storage.Open(key, expiredAt) // TODO 可以设置缓存过期事件 + writer, err := storage.Open(key, expiredAt) // TODO 可以设置缓存过期时间 if err != nil { locker.Lock() errorMessages = append(errorMessages, "open cache writer failed: "+key+": "+err.Error())