はじめに
GET処理はできていた
.ターミナルコマンド(GET)
curl http://<アドレス>?<項目1>=1
[{"項目1":"1","項目2":"2"}]
本題
そもそもGET以外だと.NET側にもおまじないが必要になる
Web.configにWebDAV追加
ASP.NET
<system.webServer>
<modules>
<remove name="WebDAVModule" />
</modules>
<handlers>
<remove name="WebDAV" />
</handlers>
</system.webServer>
.ターミナルコマンド(PUT)
curl -X PUT http://<アドレス> -H 'Content-Type:application/json' -d '{"Error":true,"errorCd":"a"}'
データやコンテントタイプは'(シングルコーテーション)で囲む
空白は許されない
詰まったところ
.間違い探し
curl -X PUT http://<アドレス> -H 'Content-Type:application/json' -d '{"Error":true,"errorCd":"a"}'
curl -X PUT http://<アドレス> -H 'Content-Type:application/json' -d ’{"Error":true,"errorCd":"a"}’
皆さんはわかりますかね
メモ帳でコマンド内容を編集していたのですが、
デフォルトのメモ帳だと文字コードが違っていました
(')と(’)、(")と(”)
よくみると違っていたので
.処理結果
curl: (3) Port number ended with '?'
curl: (3) Port number ended with '?'
このように表示されていました
今回のオチ
ネットでは「空白だ‼」とか「データは"ではなく'で囲まないといけない‼」
とかは出てくるのですが、まさか文字コードが違っているとは・・・
まあ、ちゃんとコマンドは確認しましょうねというお話でした