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

Azure函数和Swagger UI-如何在Swagger UI中显示查询字符串参数?

竺勇
2023-03-14

我有以下Azure函数,它是HTTP触发的。我已经使用这里的链接为我的endpoint设置了Swagger。下面的API需要一组查询字符串参数,即“name”、“email”、“phone”,因此它可以针对目标对象进行一些搜索。目前,函数的主体当然还没有实现,这对这个问题来说并不重要。

我的问题是:如何在swagger UI中显示查询字符串参数

函数:

[FunctionName(nameof(GetBookingCalendarsFunction))]
 public async Task<IActionResult> GetAllAsync(
        [HttpTrigger(AuthorizationLevel.Anonymous, "GET", Route = "bookings")] HttpRequest request,
        ILogger log)
    {
        log.LogInformation("C# HTTP trigger function processed a request.");

        return new OkObjectResult($"Name: {request.Query["name"]}, email: {request.Query["email"]}, phone: {request.Query["phone"]}");
    }

  [FunctionName(nameof(GetBookingCalendarsFunction))]
    public async Task<IActionResult> GetAllAsync(
        [HttpTrigger(AuthorizationLevel.Anonymous, "GET", Route = "bookings/name={name}&email={email}&phone={phone}")] HttpRequest request,
        string name, string email, string phone,
        ILogger log)
    {
        log.LogInformation("C# HTTP trigger function processed a request.");

        return new OkObjectResult($"Name: {request.Query["name"]}, email: {request.Query["email"]}, phone: {request.Query["phone"]}");
    }

共有1个答案

哈朗
2023-03-14

由于您使用包AzureExtensions.swashbuckle在Azure函数中集成Swagger,因此我们可以使用属性QueryStringParameter根据需要配置查询字符串。有关更多详情,请参阅此处

例如

 [FunctionName("GetBookingCalendarsFunction")]
        [QueryStringParameter("name", "this is name", DataType = typeof(string), Required = false)]
        [QueryStringParameter("email", "this is email", DataType = typeof(string), Required = false)]
        [QueryStringParameter("phone", "this is phone", DataType = typeof(string), Required = false)]
        public static async Task<IActionResult> GetAllAsync(
            [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "bookings")] HttpRequest req,
            ILogger log)
        {
            log.LogInformation("C# HTTP trigger function processed a request.");

           

            return new OkObjectResult($"Name: {req.Query["name"]}, email: {req.Query["email"]}, phone: {req.Query["phone"]}");
        }
 类似资料:
  • SwaggerUI 汉化版;修改了部分样式;结合SpringFox SpringFox-Swagger-UI实现API管理

  • 问题内容: 除了使用正则表达式之外,还有没有更好的方法可以从标准Ja​​vaScript中的URL字符串中的查询字符串中删除参数? 到目前为止,这是我想出的方法,似乎可以在我的测试中使用,但是我不希望重新发明querystring解析! 问题答案: 似乎很危险,因为它的参数“ bar”会匹配: 另外,如果包含RegExp中特殊的任何字符(例如“。”),它将失败。而且它不是全局正则表达式,因此只会删

  • 我从客户端发送了以下查询字符串参数 在REST服务器中,我如何接收上述格式并正确分配给每个类别? 更新1 参数的值为 {_=[1437904506062],{“take”:75,“skip”:0,“page”:1,“pageSize”:75、“filter”:{“logic”:“and”,“filters”:〔{“field”:“prodCode”,“operator”:“eq”,“value”:

  • 如何在我的routes.jsx文件中定义一个路由来捕获参数值,这些参数值是在从服务器重定向后由Twitter的单点登录进程生成的URL中获得的? 我尝试了以下路由配置,但未捕获提到的参数:

  • 如何从通过API网关提供的AWS Lambda函数中访问URL查询字符串参数? 我有两个API网关Lambda函数设置,所以我可以从公共URL调用它。我的Python函数很简单: 我已经配置了API的GET“方法请求”处理程序来传递“abc”querystring参数。 我还将API的GET“Integration Request”处理程序配置为从“method.Request.querystri