swagger-api / swagger-codegen

swagger-codegen contains a template-driven engine to generate documentation, API clients and server stubs in different languages by parsing your OpenAPI / Swagger definition.
http://swagger.io
Apache License 2.0
16.94k stars 6.03k forks source link

[dotnet core] [csharp-dotnet2] Add a method to edit default headers #10083

Open Nickel777 opened 4 years ago

Nickel777 commented 4 years ago
Description

Similar to the configuration class from c#, it sould be possible to set the default headers for each HTTP request. At the moment adding deafult header will cause duplicates, beacause there is no way to remove the previous header.

Swagger-codegen version

CodeGen version: 3

Related issues/PRs

https://github.com/swagger-api/swagger-codegen/issues/6976

Suggest a fix/enhancement

fix duplicate problem:

public ApiClient AddDefaultHeader(string name, string value) {
        if(defaultHeaders.ContainsKey(name))
            defaultHeaders.Remove(name);
        defaultHeaders.Add(name, value);
        return this;
    }

or add something like

public void SetDefaultHeader(HttpHeaders headers){
       defaultHeaders = headers;
}
brianpooe commented 4 years ago

I have a similar issue the API client does not have a param to pass down headers like authorization.