You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gitea/routers/web
Zettat123 0690cb076b
Fix `missing signature key` error when pulling Docker images with `SERVE_DIRECT` enabled (#32365)
Fix #28121

I did some tests and found that the `missing signature key` error is
caused by an incorrect `Content-Type` header. Gitea correctly sets the
`Content-Type` header when serving files.

348d1d0f32/routers/api/packages/container/container.go (L712-L717)
However, when `SERVE_DIRECT` is enabled, the `Content-Type` header may
be set to an incorrect value by the storage service. To fix this issue,
we can use query parameters to override response header values.

https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
<img width="600px"
src="https://github.com/user-attachments/assets/f2ff90f0-f1df-46f9-9680-b8120222c555"
/>

In this PR, I introduced a new parameter to the `URL` method to support
additional parameters.

```
URL(path, name string, reqParams url.Values) (*url.URL, error)
```

---

Most S3-like services support specifying the content type when storing
objects. However, Gitea always use `application/octet-stream`.
Therefore, I believe we also need to improve the `Save` method to
support storing objects with the correct content type.

b7fb20e73e/modules/storage/minio.go (L214-L221)
4 months ago
..
admin Move admin routers from /admin to /-/admin (#32189) 5 months ago
auth Refactor CSRF token (#32216) 5 months ago
devtest Refactor names (#31405) 8 months ago
events Move context from modules to services (#29440) 1 year ago
explore Respect UI.ExploreDefaultSort setting again (#32357) 4 months ago
feed Use GetDisplayName() instead of DisplayName() to generate rss feeds (#31687) 7 months ago
healthcheck Always enable caches (#28527) 1 year ago
misc Make sure git version&feature are always prepared (#30877) 10 months ago
org Add option to filter board cards by labels and assignees (#31999) 5 months ago
repo Fix `missing signature key` error when pulling Docker images with `SERVE_DIRECT` enabled (#32365) 4 months ago
shared Add option to filter board cards by labels and assignees (#31999) 5 months ago
user Fix disable 2fa bug (#32320) 4 months ago
base.go Fix `missing signature key` error when pulling Docker images with `SERVE_DIRECT` enabled (#32365) 4 months ago
githttp.go Refactor names (#31405) 8 months ago
goget.go Move context from modules to services (#29440) 1 year ago
home.go migrate some more "OptionalBool" to "Option[bool]" (#29479) 12 months ago
metrics.go Implement FSFE REUSE for golang files (#21840) 2 years ago
nodeinfo.go Move context from modules to services (#29440) 1 year ago
passkey.go Move context from modules to services (#29440) 1 year ago
swagger_json.go Move context from modules to services (#29440) 1 year ago
web.go Suggestions for issues (#32327) 4 months ago
webfinger.go Move context from modules to services (#29440) 1 year ago