curl で PUT に手こずった話 Port number ended with '?'
はじめに
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 '?'
このように表示されていました
今回のオチ
ネットでは「空白だ‼」とか「データは"ではなく'で囲まないといけない‼」
とかは出てくるのですが、まさか文字コードが違っているとは・・・
まあ、ちゃんとコマンドは確認しましょうねというお話でした
Author And Source
この問題について(curl で PUT に手こずった話 Port number ended with '?'), 我々は、より多くの情報をここで見つけました https://qiita.com/ku4/items/61318be68234eb2b06b0著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .