禁止在openapi-generator-cli生成的javascript代码中设置User-Agent



在Vue.js前端的上下文中,似乎openapi-generator-cli生成的javascript客户端代码正在试图设置User-Agent,它在Google Chrome中给出以下错误:

Refused to set unsafe header "User-Agent"

如何配置openapi-generator-cli,使其不尝试设置User-Agent?

查看源代码,看起来只有在包含此参数时才会添加用户代理。否则应该省略。请检查是否包含此标志。

或者,可以修改项目的源代码,以防止以某种方式添加用户代理。

似乎一个"User-Agent"头总是添加到生成的ApiClient.js,至少在version 6.2.0中。

它被设置为生成器配置中指定的非空值,或者,如果没有提供这样的值,则设置为默认值。节选自ApiClient.js:

// constructor:
this.defaultHeaders = {
'User-Agent': 'OpenAPI-Generator/1.0/Javascript'
};
// callApi:      
request.set(this.defaultHeaders).set(this.normalizeParams(headerParams));

但是,生成的特定于资源的api客户端可以在创建它们之后进行修改,以取消默认头的设置,如下面的示例所示(假设为名为Resource的资源生成api客户端):

const ResourceClientApi = new ResourceApiClient();
const resourceApi = resourceClientApi.getResourceApi();
resourceApi.apiClient.defaultHeaders = {};

然后像往常一样简单地使用resourceApi:

resourceApi.getResource().then(...);