feat(go-feature-flag): add CustomHeaders option#831
feat(go-feature-flag): add CustomHeaders option#831olvlvl wants to merge 2 commits intoopen-feature:mainfrom
Conversation
Signed-off-by: Olivier Laviale <olivier.laviale@gmail.com>
Summary of ChangesHello @olvlvl, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request enhances the GoFeatureFlag provider by adding the capability to include custom HTTP headers in all requests. This feature is crucial for environments where network infrastructure, such as WAFs, mandates the presence of specific headers like Highlights
Changelog
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request adds a CustomHeaders option to the GoFeatureFlag provider, allowing users to set custom headers for all outgoing HTTP requests. This is a valuable addition, particularly for environments with WAFs that require specific headers like User-Agent.
The implementation is sound and well-tested. I've included a couple of suggestions to improve code clarity and reduce duplication. One suggestion is to refactor duplicated header-setting logic into a helper function in goff_api.go. Another is to simplify the code in provider.go by using the existing ofrep.WithHeader helper function.
Overall, this is a great contribution that enhances the provider's flexibility.
Signed-off-by: Olivier Laviale <olivier.laviale@gmail.com>
f74c2c3 to
bddb297
Compare
|
/gemini review |
There was a problem hiding this comment.
Code Review
This pull request introduces a valuable feature by allowing custom headers to be set for HTTP requests, which is particularly useful for scenarios requiring a User-Agent. The implementation is solid and includes corresponding test updates. My review includes a suggestion to address an inconsistency in how the Authorization header precedence is handled between different parts of the provider. Making this change will lead to more predictable and flexible behavior. Overall, great work on this enhancement.
This PR
Adds support for custom headers for every HTTP request, similar to the option found on the Ruby SDK. Custom headers can be used to define a
User-Agent, to prevent requests from being blocked by servers that require browser-like identification or specific device signatures.Notes
Our WAF requires the
User-Agentheader to be defined. Requests to the relay-proxy are being denied because the header is not specified.