投稿者 魔界の仮面弁士  (社会人) 投稿日時 2021/3/15 09:25:57
自分の環境(Win10 20H2 のコマンドプロンプト)だと、
まささん/るきおさんいずれのパターンでも失敗して、
HTTP/1.1 400 Bad Request になってしまいました。
エラーの内容を貼っておきます。


【空白あり(まささん)】
HTTP/1.1 400 Bad Request
Content-Length: 267
Content-Type: application/problem+json; charset=utf-8
Server: Microsoft-IIS/10.0
X-Powered-By: ASP.NET
Set-Cookie: ARRAffinity=73d9a522278573bf03c9ee51757c1637033aa630368a96763ab9c0c83f5a8f60;Path=/;HttpOnly;Secure;Domain=umayadia-apisample.azurewebsites.net
Set-Cookie: ARRAffinitySameSite=73d9a522278573bf03c9ee51757c1637033aa630368a96763ab9c0c83f5a8f60;Path=/;HttpOnly;SameSite=None;Secure;Domain=umayadia-apisample.azurewebsites.net
Date: Mon, 15 Mar 2021 00:15:37 GMT

{"type":"https://tools.ietf.org/html/rfc7231#section-6.5.1","title":"One or more validation errors occurred.","status":400,"traceId":"|e78c2efa-469b944d221c2627.","errors":{"$":["''' is an invalid start of a value. Path: $ | LineNumber: 0 | BytePositionInLine: 0."]}}curl: (3) [globbing] unmatched close brace/bracket in column 69



【空白なし(るきおさん)】
HTTP/1.1 400 Bad Request
Content-Length: 267
Content-Type: application/problem+json; charset=utf-8
Server: Microsoft-IIS/10.0
X-Powered-By: ASP.NET
Set-Cookie: ARRAffinity=73d9a522278573bf03c9ee51757c1637033aa630368a96763ab9c0c83f5a8f60;Path=/;HttpOnly;Secure;Domain=umayadia-apisample.azurewebsites.net
Set-Cookie: ARRAffinitySameSite=73d9a522278573bf03c9ee51757c1637033aa630368a96763ab9c0c83f5a8f60;Path=/;HttpOnly;SameSite=None;Secure;Domain=umayadia-apisample.azurewebsites.net
Date: Mon, 15 Mar 2021 00:17:34 GMT

{"type":"https://tools.ietf.org/html/rfc7231#section-6.5.1","title":"One or more validation errors occurred.","status":400,"traceId":"|e78c2efb-469b944d221c2627.","errors":{"$":["''' is an invalid start of a value. Path: $ | LineNumber: 0 | BytePositionInLine: 0."]}}




どうも、「'」のシングルクォートが悪さをしているように見えたので、
https://stackoverflow.com/questions/17560858/
を参考にして、空白入りのまま下記のようにしてみたところ、
自分の環境でも 『{"success":true,"data":null}』を得る事が出来ました。

curl.exe https://umayadia-apisample.azurewebsites.net/api/persons -X POST -i -H "content-type:application/json" -d "{\"name\":\"YAMADA Taro\",\"note\":\"Shimane\",\"age\":75,\"registerDate\":\"0214-03-03T04:14:25\"}"



ただし cmd.exe からではなく PowerShell 5.1 から実行してみた場合には、
るきおさんのコマンドラインで成功し、まささんや私のコマンドラインでは失敗しました。


また、下記の Curl Online サイトにおいては、上記 3 パターンとも成功します。
https://reqbin.com/curl 
※上記サイトでは、curl.exe を curl に書き換えて実行する必要があります。