0
私はSwagger POSTを開始した別のスレッドで別の質問をしましたが、別の問題が残っています。ここでswaggerノードValidationError: "body"が必要です
は(そうほんの一部を取ったが、構文とまったく問題がない大きなファイルからそれをコピーした)
私のconfig JSONファイルの私のパラメータ定義
"/people/postTest": {
"post": {
"summary": "post test.",
"description": "Test.",
"operationId": "postTest",
"consumes": [
"application/json"
],
"tags": [
"test post"
],
"parameters": [
{
"in":"body",
"name":"body",
"description": "body for the POST request",
"required":true,
"schema": {"$ref":"#/definitions/inBody"}
}
] }}
"definitions": {
"inBody": {
"properties": {
"RequestSystem": {
"type": "string"
}}}}
であり、私は使用しています
curl -H "Content-Type: application/json" -X POST -d '{"RequestSystem":"IVR"}' http://localhost:8016/people/postTest
、これは私が私のノードサーバ
を起動しようとすると、私は取得しています検証エラーである私の要求を投稿するCURL**ValidationError: "body" is required**
私は "RequestSystem"パラメータを渡していることは知っていますが、私は自分の設定jsonファイルの "parameters"で自分のパラメータをどこに設定するのか間違っています。どんな助けもありがとう。
MANISH、感謝の意を表します。私はそれを「必須」にしました:あなたが提案したとおりに間違っています。これで検証が完了します。しかし、私がRESTサービスにconsole.log(req.body)を持っていると私に "undefined"が与えられています。私は何が欠けていますか?助言がありますか? – JBone
RESTサービスでは、本体のペリメーター名は 'RequestSystem'と同じです。ボディープロパティーと同じ名前を使用しない場合 –
もう一度ありがとうございます。ここにノード上のRESTサービスがあり、jsを表現しています。 app.use(bodyParser.json()) app.use(bodyParser.urlencoded({extended:true})); console.log( "私はtestPostサービスに含まれています); //これが表示されます console.log(" req body " 、req.body)// '未定義'と言うので、ここでRequestSystemにアクセスするにはどうしたらいいですか?私はparamが "req.body.RequestSystem"のようなものであると思っていました.. – JBone