[
https://issues.apache.org/jira/browse/KNOX-2559?focusedWorklogId=585295&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-585295
]
ASF GitHub Bot logged work on KNOX-2559:
----------------------------------------
Author: ASF GitHub Bot
Created on: 19/Apr/21 18:25
Start Date: 19/Apr/21 18:25
Worklog Time Spent: 10m
Work Description: moresandeep commented on a change in pull request #423:
URL: https://github.com/apache/knox/pull/423#discussion_r616077596
##########
File path:
gateway-spi/src/main/java/org/apache/knox/gateway/dispatch/ConfigurableDispatch.java
##########
@@ -41,13 +47,26 @@
public class ConfigurableDispatch extends DefaultDispatch {
private Set<String> requestExcludeHeaders =
super.getOutboundRequestExcludeHeaders();
private Set<String> responseExcludeHeaders =
super.getOutboundResponseExcludeHeaders();
+ private Map<String, String> requestAppendHeaders = new HashMap<>();
private Set<String> responseExcludeSetCookieHeaderDirectives =
super.getOutboundResponseExcludedSetCookieHeaderDirectives();
private Boolean removeUrlEncoding = false;
private Set<String> convertCommaDelimitedHeadersToSet(String headers) {
return headers == null ? Collections.emptySet(): new
HashSet<>(Arrays.asList(headers.split("\\s*,\\s*")));
}
+ private Map<String, String> convertJSONHeadersToMap(String headers) {
Review comment:
Apologies for the delay, the simple param example looks good to me, I
cannot think of a case where we need complex param, do you have one in mind?
AFA headers are concerned they are simple <key><value> so I do not think we
need to complicate this, now depending on header the separator might vary (e.g.
SET-COOKIE header) but that should not be a problem here. We could do a simple
validation to make sure that the header values don't break the request.
Test would be great to have we don't this to break accidentally due to any
later change.
Thanks.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 585295)
Time Spent: 3h (was: 2h 50m)
> Adding functionality to append headers in Configurable Dispatch
> ---------------------------------------------------------------
>
> Key: KNOX-2559
> URL: https://issues.apache.org/jira/browse/KNOX-2559
> Project: Apache Knox
> Issue Type: Improvement
> Reporter: Mudit Sharma
> Assignee: Mudit Sharma
> Priority: Major
> Attachments:
> 0001-KNOX-2559-Added-functionality-to-append-headers-in-r.patch
>
> Time Spent: 3h
> Remaining Estimate: 0h
>
> Hi, We are using Apache Knox to guardrail our perimeter for our Hadoop
> Cluster. As part of this we are abstracting out many APIs and putting them
> behind Knox
> We had a requirement where we want to append some service specific headers in
> the API calls before Knox submits it to the service. Livy had a similar
> implementation but Livy created a whole new Dispatcher to do this
> We have different APIs and different set of headers for all of them. We are
> suggesting to enlarge scope of current ConfigurableDispatcher to also allow
> one more param:
>
> <param>
> <name>requestAppendHeaders</name>
> <value>\{"a":"b"}</value>
> </param>
>
> If given above param, Knox while submitting the request to the service, will
> add these headers along with the request
--
This message was sent by Atlassian Jira
(v8.3.4#803005)