gpt4 book ai didi

jquery - 如何在 Swagger 生成的 typescript-jquery 客户端中设置 OAuth 授权 token

转载 作者:搜寻专家 更新时间:2023-10-30 21:48:06 24 4
gpt4 key购买 nike

我已经为需要 OAuth token 的 swagger 定义的 API 生成了绑定(bind)。

swagger-codegen generate -i api.json -o test -l typescript-jquery

但在我看来,标题是硬编码在生成的代码中的。

有没有办法在不修改生成代码的情况下设置授权 header ?

最佳答案

不确定这是最好的方法还是推荐的方法,但我在调用生成的 SDK 之前解决了在 jquery 中设置 header 的明显 api 限制。

jquery.ajaxSettings.headers = { ... }

看起来当提供 securityDefinitions 时,如注释中所述,生成器将考虑配置中的 token :https://github.com/swagger-api/swagger-codegen/blob/2.3.0_BACKUP_ONLY/modules/swagger-codegen/src/main/resources/typescript-jquery/api.mustache#L174

部分问题是根本无法使用 typescript-jquery 绑定(bind),生成的代码如下所示:

    let dfd = $.Deferred();
$.ajax(requestOptions).then(
(data: models.Operation, textStatus: string, jqXHR: JQueryXHR) =>
dfd.resolve(jqXHR, data),
(xhr: JQueryXHR, textStatus: string, errorThrown: string) =>
dfd.reject(xhr, errorThrown)
);
return dfd.promise();

虽然我的新话题观点是它应该看起来更像:

    let dfd = $.Deferred();
$.ajax(requestOptions).then(
(data: models.Operation, textStatus: string, jqXHR: JQueryXHR) =>
dfd.resolve({ request: jqXHR, body: data }),
(xhr: JQueryXHR, textStatus: string, errorThrown: string) =>
dfd.reject({ request: xhr, body: errorThrown})
);
return dfd.promise();

鉴于生成方法的签名是:

public someMethod(): JQueryPromise<{ response: JQueryXHR; body: models.Operation;  }>

不确定 reject 部分,但编译器和智能感知都更快乐。

关于jquery - 如何在 Swagger 生成的 typescript-jquery 客户端中设置 OAuth 授权 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51141122/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com