FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Allow an HttpClientFactory to be assigned to OpenAIAPI by babrekel · Pull Request #103 · OkGoDoIt/OpenAI-API-dotnet · GitHub

Repository navigation

Allow an HttpClientFactory to be assigned to OpenAIAPI - #103

Merged
OkGoDoIt merged 1 commit into
OkGoDoIt:masterfrom
babrekel:httpclientfactory
Apr 2, 2023
Merged

OkGoDoIt merged 1 commit into
OkGoDoIt:masterfrom
babrekel:httpclientfactory

Conversation

babrekel commented Mar 31, 2023 •
edited
Loading

Copy link
Copy Markdown
Contributor

This change aims to enable consumers to use IHttpClientFactory and apply resiliency best practices described in this document without a breaking change. Consumers can now implement non-functional requirements such as:

  • Configuring retry policies to the outgoing HTTP requests.
  • Logging and telemetry instrumentation to outgoing HTTP calls.
  • Mocking the HTTP responses for integration testing scenarios

Implementation wise, I opted not to modify the constructor as it takes an optional parameter. Adding another optional parameter is a breaking change, and mixing optional parameters with overloaded constructors is not generally recommended. Effectively seeking to minimize change.

Package wise, the dependency on Microsoft.Extensions.Http is no longer private.

I used Moq in the unit tests to mock an HTTP Client and ensure the right client is used in the right place.

Related issues that could be addressed with this change (or at least allow a workaround):
#102
#100
#91
#41
#28

OkGoDoIt commented Apr 2, 2023

Copy link
Copy Markdown
Owner

Thank you @babrekel, this looks good! I appreciate that you found a way to do this without breaking changes.

OkGoDoIt merged commit e585eb2 into OkGoDoIt:master Apr 2, 2023

Copy link
Copy Markdown

Does it support Typed HttpClient Instance as well?

This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants


Back | FazBrowse Home | New Git URL