我已经整合了swagger php api outr rest-api所有服务工作正常,但我在api中的post json数组中面临问题。这不行,请你帮忙。
这里我的招摇api代码
/**
* @SWG\Post(path="/createbetsnap/get_all_game_data",
* tags={"Create Betsnaps Section"},
* summary="This function used to get selected tournament schedule date and other master data like size, prize structure and entry fee",
* description="",
* operationId="get_all_game_data",
* produces={"application/json"},
* consumes={"application/json"},
* @SWG\Parameter(
* name="Login_Session_Key",
* in="header",
* description="The Login Session Key of logged in user.",
* required=true,
* type="string"
* ),
* @SWG\Parameter(
* name="game_tournament",
* in="formData",
* description="The game tournament ids array field.",
* required=true,
* type="array",
* @SWG\Items(type="string")
* ),
* @SWG\Response(response=200, description="success message with data array"),
* @SWG\Response(response=500, description="Invalid username/password supplied")
* )
*/
我在api之前添加的关于swagger的完整代码。
我想发布像
这样的game_tournament字段{"game_tournament":["18","8"]}
但是来自以下格式的swagger-ui小组帖子
game_tournament=8,18
你可以帮我解释一下我的代码有什么问题,我需要改变什么。
先谢谢。
答案 0 :(得分:1)
要POST JSON数据,您需要使用in: body
参数并使用@SWG\Schema
指定数据类型:
* @SWG\Parameter(
* name="game_tournament",
* in="body",
* description="The game tournament ids array field.",
* required=true,
* @SWG\Schema(
* type="array",
* @SWG\Items(type="string")
* )
* ),
答案 1 :(得分:0)
使用例如面向Laravel / Lumen的Swagger Lume软件包,您可以通过以下方式获得您的要求:
* @OA\Parameter(
* name="game_tournament[]",
* in="query",
* description="The game tournament ids array field",
* required=true,
* @OA\Schema(type="array", @OA\Items(type="string")),
* ),
答案 2 :(得分:-1)
只需尝试:
* @SWG\Parameter(
* name="game_tournament[]",
* type="array",
* items="string",
* collectionFormat="multi",
* required=true,
* in="query",
* ),