简体   繁体   中英

Payload field validation in WSO2 API Manager

I've written a swagger and imported the same which will be validating the length of mobile number which should take 10 digits and also an input type which should accept only 1 Character as input or else it should throw an Error. But the message was going from APIM to ESB fairly. Should I've to make any more changes in API Manager or Code. Please suggest,

swagger: "2.0"
info:
  version: v1.0.0
  title: TestValidation
  description: "This API to Test length Validation\n\n\nSupported operations :\n\n1.  validation"
schemes:
  - https
  - http
consumes:
  - application/json
produces:
  - application/json
paths:
  /validation:
    post:
      summary: dfgdf
      description: fghfg
      parameters:
        - in: body
          name: Payload
          description: Request Body
          required: false
          schema:
            $ref: "#/definitions/validation-request"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/validation-response"
        "400":
          schema:
            $ref: "#/definitions/TestValidation-api-error"
          description: Bad Request. Invalid request or validation error.
        "415":
          schema:
            $ref: "#/definitions/TestValidation-api-error"
          description: Unsupported Media Type. The entity of the request was in a not supported format.
        "500":
          schema:
            $ref: "#/definitions/TestValidation-api-error"
          description: Internal Server Error
      produces:
        - application/json
      consumes:
        - application/json
      x-auth-type: "Application & Application User"
      x-throttling-tier: Unlimited
definitions:
  validation-request:
    type: object
    properties:
      MobileNum:
        format: int64
        type: number
        minLength: 10
        maxLength: 10
      inputType:
        type: string
        minLength: 1
        maxLength: 1
  validation-response:
    type: object
    properties:
      response:
        type: object
  TestValidation-api-error:
    title: Error object returned with HTTP status
    type: object
    properties:
      fault:
        type: object
        properties:
          code:
            format: int64
            type: integer
          type:
            type: string
          message:
            description: Error message.
            type: string
          description:
            description: A detail description about the error message.
            type: string
        required:
          - code
          - message

This feature is available in APIM 3.0.0. You have to enable it for each API you want it.

Here is the doc. https://apim.docs.wso2.com/en/3.0.0/Learn/APISecurity/APIRequestResponseSchemaValidation/json-schema-validator/

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM