2017-05-24 7 views
0

私の目標は、ブール値で、デフォルトはfalseであり、CURL要求で真の値を送ることができるusersスキーマ内のアトリビュートをisAdminにすることです。カール要求のブール値を渡す

私は自分のスキーマにこので始まった:

isAdmin: { 
    type: Boolean, 
    default: false, 
    required: true 
    } 

と期待通りに動作CURLの要求とisAdminがfalseを返しています。

API="http://localhost:4741" 
URL_PATH="/sign-up" 
EMAIL="[email protected]" 
PASSWORD="test" 


curl "${API}${URL_PATH}" \ 
    --include \ 
    --request POST \ 
    --header "Content-Type: application/json" \ 
    --data '{ 
    "credentials": { 
     "email": "'"${EMAIL}"'", 
     "password": "'"${PASSWORD}"'", 
     "password_confirmation": "'"${PASSWORD}"'" 
    } 
    }' 

私は、デフォルト値を撮ってみました:

isAdmin: { 
    type: Boolean, 
    required: true 
    } 

を..and CURLリクエストにTまたはFを渡すと、それは働いていないしてみてください。エラーは、isAdminが必要であることを示しています。私のCURLリクエストに何が間違っているか分かりません。

API="http://localhost:4741" 
URL_PATH="/sign-up" 
EMAIL="[email protected]" 
PASSWORD="test" 
ADMIN="True" 

curl "${API}${URL_PATH}" \ 
    --include \ 
    --request POST \ 
    --header "Content-Type: application/json" \ 
    --data '{ 
    "credentials": { 
     "email": "'"${EMAIL}"'", 
     "isAdmin": "'"${ADMIN}"'", 
     "password": "'"${PASSWORD}"'", 
     "password_confirmation": "'"${PASSWORD}"'" 
    } 
    }' 

私が間違っていることは何ですか?そして/またはどのように私はfalseのデフォルト値を持つことができ、真のisAdmin属性を持つ新しいユーザーをPOSTできますか?事前にアドバイスをありがとうございます。

説明:MongooseとExpressAPIを使用します。

+0

これはなんですか? bashスクリプト? –

+0

@NeilLunnはいシェルスクリプト – awoodrum87

+1

私は、サーバーがJSONを解析すると仮定します。だから、ちょうどあなたが好きなJSONパーサー(JavaScriptのコンソールを開き、 'JSON.stringify 'を使って)を使ってJavaScriptオブジェクトをタイプした場合、文字列の出力はどのように見えますか?そしてもちろん、あなたの文字列を正確に同じように見せてください。 –

答えて

0

値を二重引用符で囲んでいるため、ブール値ではなく文字列として扱われているようです。試してみてください:

ADMIN=true # may be it is safer to use all lowercase for true/false 
curl "${API}${URL_PATH}" \ 
    --include \ 
    --request POST \ 
    --header "Content-Type: application/json" \ 
    --data '{ 
    "credentials": { 
     "email": "'"${EMAIL}"'", 
     "isAdmin": '${ADMIN}', 
     "password": "'"${PASSWORD}"'", 
     "password_confirmation": "'"${PASSWORD}"'" 
    } 
    }' 
+0

これで問題は解決しましたか?それ以外の場合は問題を解決できましたか? – codeforester

関連する問題