在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(...);