mirror of
https://github.com/fosrl/pangolin.git
synced 2026-07-16 14:47:04 -05:00
[PR #3171] [CLOSED] feat(resources): add custom response headers support #34641
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/fosrl/pangolin/pull/3171
Author: @Gulianrdgd
Created: 5/27/2026
Status: ❌ Closed
Base:
main← Head:main📝 Commits (8)
9a942e7Ready for testing24d0c1atested and translated!64339eeReverted package-lock.jsonf811c9bForgot about blueprintsc98dc1fFixed copilot issue.4051064Fixed copilot issue.8ccfa9cFixed copilot issue.ec07f42Removed migrations📊 Changes
27 files changed (+271 additions, -121 deletions)
View changed files
📝
messages/bg-BG.json(+4 -2)📝
messages/cs-CZ.json(+4 -2)📝
messages/de-DE.json(+4 -2)📝
messages/en-US.json(+4 -2)📝
messages/es-ES.json(+4 -2)📝
messages/fr-FR.json(+4 -2)📝
messages/it-IT.json(+4 -2)📝
messages/ko-KR.json(+4 -2)📝
messages/nb-NO.json(+4 -2)📝
messages/nl-NL.json(+4 -2)📝
messages/pl-PL.json(+4 -2)📝
messages/pt-PT.json(+4 -2)📝
messages/ru-RU.json(+4 -2)📝
messages/tr-TR.json(+4 -2)📝
messages/zh-CN.json(+4 -2)📝
messages/zh-TW.json(+4 -2)📝
server/db/pg/schema/schema.ts(+2 -1)📝
server/db/sqlite/schema/schema.ts(+2 -1)📝
server/lib/blueprints/proxyResources.ts(+15 -6)📝
server/lib/blueprints/types.ts(+3 -1)...and 7 more files
📄 Description
Community Contribution License Agreement
By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.
Description
Closes #2789 and feature request: #1939
Pangolin previously only supported injecting custom headers into requests forwarded to downstream targets (
customRequestHeaders). This PR addsresponseHeadersand renames the existingheadersfield torequestHeadersthroughout the stack for clarity. This was already possible in Treafik, so it was simply adding responseHeaders to the code where (request) headers appeared.The blueprint code is also updated to still be backwards compatible.
headersinpangolin.ymlworks as alias forrequestHeaders. BothrequestHeadersandresponseHeadersare now accepted and if bothheadersandrequestHeadersare specified, they are merged.I also let Claude do the translations, I am unsure if they are correct. But the languages I speak are good.
How to test?
customRequestHeadersandcustomResponseHeaderscurl -vthrough Traefik confirms response headers appear on the HTTP response and request headers arrive at the upstream targetheadersset in a blueprint continue to work after migration🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.