質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Curl(プログラミング言語)

Curl(プログラミング言語)は、Webコンテンツ向けのプログラミング言語。HTMLのようなテキスト記述やレイアウトデザイン、JavaScript のようなオブジェクト指向プログラム言語、Java のような重量機能など複数の言語の特徴を一つのフレームワークに統合しています。

cURL

cURLはHTTP, FTPやTelnetなど複数のプロトコルを用いてデータを転送するライブラリとコマンドラインツールを提供します。

Swagger

Swaggerは、REST APIを定義するための標準仕様に基づいて構築された一連のオープンソースツール。REST APIの設計や構築、文書化、使用に便利なツールを提供。Swagger Specを書くことでドキュメント生成まで自動的に行い、さらにドキュメントから実際のリクエストを投げられます。

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)

受付中

Swagger-ui parameterリクエストを配列形式でを受け取りたい。paramsが文字列になる原因

dai_00
dai_00

総合スコア2

Curl(プログラミング言語)

Curl(プログラミング言語)は、Webコンテンツ向けのプログラミング言語。HTMLのようなテキスト記述やレイアウトデザイン、JavaScript のようなオブジェクト指向プログラム言語、Java のような重量機能など複数の言語の特徴を一つのフレームワークに統合しています。

cURL

cURLはHTTP, FTPやTelnetなど複数のプロトコルを用いてデータを転送するライブラリとコマンドラインツールを提供します。

Swagger

Swaggerは、REST APIを定義するための標準仕様に基づいて構築された一連のオープンソースツール。REST APIの設計や構築、文書化、使用に便利なツールを提供。Swagger Specを書くことでドキュメント生成まで自動的に行い、さらにドキュメントから実際のリクエストを投げられます。

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)

0回答

0評価

0クリップ

426閲覧

投稿2021/04/21 22:16

編集2022/01/12 10:55

前提・実現したいこと

Laravel6.x
swagger 2.0

  • swagger-uiから送られてくるparamsがこのような状態で文字列として来ています。

Log

local.DEBUG: {“q”:“{ \“test1\“: \“string\“, \“test2\“: \“string\“, \“test3\“: \“string\” },{ \“test1\“: \“string\“, \“test2\“: \“string\“, \“test3\“: \“string\” }"}
  • swagger-uiからのリクエストを下記のような構造で受け取りたいです。
{ "q": [ {"test1": "XXX", "test2": "XXX", "test3": "XXX"}, {"test1": "XXX", "test2": "XXX", "test3": "XXX"} ] }

該当のソースコード

controllerのソースコード

PHP

* @SWG\Parameter( * name=“q”, * description=“リクエストパラメータ“, * in=“query”, * required=false, * type=array, * @SWG\Items( * type=object, * @SWG\Property( * property=“test1”, * type=string, * ), * @SWG\Property( * property=“test2”, * type=string, * ), * @SWG\Property( * property=“test3”, * type=string, * ), * ), * ),

Json結果

JSON

“parameters”: [ { “name”: “Authorization”, “in”: “header”, “required”: true, “type”: “string” }, { “name”: “X-HTTP-Method-Override”, “in”: “header”, “required”: false, “type”: “string” }, { “name”: “q”, “in”: “query”, “required”: false, “type”: “array”, “items”: { “properties”: { “test1”: { “type”: “string” }, “test2”: { “type”: “string” }, “test3”: { “type”: “string” } }, “type”: “object” } } ],

swagger-UI

swagger-Uiでは、下記のように送信しています。

q array[object](query) リクエストパラメーター {"test1": "XXX", "test2": "XXX", "test3": "XXX"} - {"test1": "XXX", "test2": "XXX", "test3": "XXX"} - Add item

Curl

curl -X GET “http://localhost:8000/api/test?q=%7B%0A%20%20%22test1%22%3A%20%22string%22%2C%0A%20%20%22test2%22%3A%20%22string%22%2C%0A%20%20%22test3%22%3A%20%22string%22%0A%7D,%7B%0A%20%20%22test1%22%3A%20%22string%22%2C%0A%20%20%22test2%22%3A%20%22string%22%2C%0A%20%20%22test3%22%3A%20%22string%22%0A%7D” -H “accept: application/json” -H “Authorization: a”

補足情報(FW/ツールのバージョンなど)

postmanでは、問題なく下記の形で受け取れます。

{ "q": [ {"test1": "XXX", "test2": "XXX", "test3": "XXX"}, {"test1": "XXX", "test2": "XXX", "test3": "XXX"} ] }

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Curl(プログラミング言語)

Curl(プログラミング言語)は、Webコンテンツ向けのプログラミング言語。HTMLのようなテキスト記述やレイアウトデザイン、JavaScript のようなオブジェクト指向プログラム言語、Java のような重量機能など複数の言語の特徴を一つのフレームワークに統合しています。

cURL

cURLはHTTP, FTPやTelnetなど複数のプロトコルを用いてデータを転送するライブラリとコマンドラインツールを提供します。

Swagger

Swaggerは、REST APIを定義するための標準仕様に基づいて構築された一連のオープンソースツール。REST APIの設計や構築、文書化、使用に便利なツールを提供。Swagger Specを書くことでドキュメント生成まで自動的に行い、さらにドキュメントから実際のリクエストを投げられます。

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)