当前位置: 首页 > 知识库问答 >
问题:

在Swager的查询参数中添加文本区域

单于庆
2023-03-14

我刚开始招摇。目前,我使用的是swagger ui v2.1.4版。我的API由查询参数组成。其中一个参数接受JSON主体。我想在文本区显示这个参数。目前,它显示在输入标记中。此外,我希望在该文本区域下方显示参数内容类型。请帮我怎么做?

共有3个答案

何升
2023-03-14

OpenAPI 3.0现在支持对象作为查询参数

钱和平
2023-03-14

在描述参数时添加< code >格式,例如:

parameters:
  - name: key
    type: string
    in: query
    format: textarea

在初始化<code>swagger ui</code>时添加自定义插件

       // Custom plugin that adds extra stuff
       const TextAreaPlugin = function() {
           return {
               wrapComponents: {
                   // add text above InfoContainer - same effect as above title
                   JsonSchema_string: (Original, runtime) => (props) => {
                       var React = runtime.React,
                           schema = props.schema || {},
                           errors = props.errors || {},
                           format = schema.format || "",
                           isDisabled = props.disabled;

                        errors = errors.toJS ? errors.toJS() : []

                       function handleOnChange(e) {
                           const inputValue = e.target.value;

                           props.onChange(inputValue)
                       }

                       if (format == "textarea") {
                           return React.createElement("div", null,
                                   React.createElement("textarea", {
                                       title: errors.length ? errors : "",
                                       className: errors.length ? "invalid" : "",
                                       value: props.value,
                                       disabled: isDisabled,
                                       onChange: handleOnChange
                                   })
                           )
                       }

                       return React.createElement(Original, props);
                   },
               }
           }
       };

       // Begin Swagger UI call region
        var ui = SwaggerUIBundle({
            url: "./swagger.json",
            dom_id: '#swagger-ui',
            deepLinking: true,
            presets: [
                SwaggerUIBundle.presets.apis,
                SwaggerUIStandalonePreset
            ],
            plugins: [
                TextAreaPlugin,
                SwaggerUIBundle.plugins.DownloadUrl
            ],
            layout: "StandaloneLayout"
        });
夏星阑
2023-03-14

在当前的 swagger 2.0 规范中,不能使用复杂值作为查询参数。它们可以是基元或基元值数组。您可以直接从规范中了解更多信息:

https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#parameter-object

由于这是一个普遍要求的特性,它将在下一版本的规范中得到支持,但该特性不会被移植到swagger 2.0工具中。

 类似资料:
  • 我们的API有这样的endpoint,通过合并这两组参数,同时支持来自< code>query和< code>body的参数。 例如: 生成的参数集将包含两个,和。 此endpoint可以用作: 或 有没有办法在Swagger中指定这种“双重性”? UPD 我想我应该将参数定义为:和

  • 我正在尝试正确定义 OpenAPI 规范,以便从该规范生成 api 客户端。我已经解决了一个问题,即我们有一个复杂的查询对象,其中包含嵌套对象和对象数组,用于获取 GET 路由。 让我们以这些类为例。 和一个带有@Query decorator的get请求。 我得到的是。 我还尝试通过添加@ApiQuery装饰器来定义查询参数,它几乎可以工作。 - 但是现在我正在将重复的查询定义混入一个。有没有办

  • 如何在下面的本机搜索查询中添加查询超时?

  • 我使用Spring Data JPA进行如下原生查询 现在,我的用例是 如果可用,则只应返回该类别中具有该代码的项目 但如果不可用,则应返回该类别中的所有项目 因此,上述类别的问题是当作为传递时,不会返回任何数据,因为它与任何内容都不匹配。尽管要求很高,但它应该被忽略。 那么,有没有一种方法可以选择性地向Spring数据JPA本机查询添加一个子句呢。我知道使用是可能的,但是我们能为原生查询做类似的

  • [![我想点击Male,它反映在文本区域的Gender旁边:Male] 例如,我得到了这个脚本,我想要一个选项,当我点击按钮Male,它显示在gender旁边:在里面,如果我点击Male,它就会显示在Male旁边,就像这个Male,faleme? 文本框的图像:

  • 本文向大家介绍php动态添加url查询参数的方法,包括了php动态添加url查询参数的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php动态添加url查询参数的方法。分享给大家供大家参考。具体分析如下: 这段代码可以动态为url添加key-value查询参数,如果参数已经存在则会用新的进行覆盖 希望本文所述对大家的php程序设计有所帮助。