curlコマンドでヘッダのキーが小文字にされる
問題
curlコマンドでAuthorizationヘッダを送ろうとしたのですが、「authorization」と送信されるようです。
入力した通りに大文字は大文字のまま送信できませんか?
curl https://example.com/test.php -H 'Authorization: Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
→ -v オプションでリクエストヘッダを見ると authorization になっている
答え
オプション --http1.1 を追加すると、そのまま送信してくれる。
curl https://example.com/test.php --http1.1 -H 'Authorization: Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
curlのデフォルトがHTTP/2で、HTTP/2の仕様 RFC7540 では、ヘッダのフィールド名は小文字にせよとのこと。