---
slug: "dart-flutter-の-dio-ライブラリは-httpヘッダーをすべて小文字で送信する"
title: "Dart (Flutter) の dio ライブラリは HTTPヘッダーをすべて小文字で送信する"
description: "Dart (Flutter) の dio ライブラリ\n\nhttps://pub.dev/packages/dio\n\nは、よく使われる http ライブラリと比べて、キャンセル、GETパラメータ、タイムアウト、JSON などが平易に扱えるため、使い勝手が良い。\n\n\n\nただ、Ver 3.x では、HTTP ヘッダーをすべて小文字にして送信するという問題がある。"
url: "https://www.ytyng.com/blog/dart-flutter-の-dio-ライブラリは-httpヘッダーをすべて小文字で送信する"
publish_date: "2021-03-20T13:05:57Z"
created: "2021-03-20T13:05:57Z"
updated: "2026-02-27T05:05:25.615Z"
categories: []
keywords: ""
featured_image_url: "https://media.ytyng.com/resize/20230812/337089bb9d7147839469fb64ccbd4f34.png.webp?width=768"
has_video: false
has_music: false
video_urls: []
music_urls: []
lang: "ja"
---

# Dart (Flutter) の dio ライブラリは HTTPヘッダーをすべて小文字で送信する

<p>Dart (Flutter) の dio ライブラリ</p>
<p><a href="https://pub.dev/packages/dio">https://pub.dev/packages/dio</a></p>
<p>は、よく使われる http ライブラリと比べて、キャンセル、GETパラメータ、タイムアウト、JSON などが平易に扱えるため、使い勝手が良い。</p>
<p></p>
<p>ただ、Ver 3.x では、HTTP ヘッダーをすべて小文字にして送信するという問題がある。</p>
<p></p>
<p>つまり、</p>
<pre><span>await </span>Dio().get(<br />  endpointUrl<span>,<br /></span><span>  </span>options: Options(<br />    headers: {<br /><span>      'Authorization': 'xxxxxx'<br />    }<br /></span><span>  </span>)<span>,<br /></span>)<span>;</span></pre>
<p>とした場合、実際のヘッダは <code>authorization: xxxxxx</code> となる。</p>
<p>サーバによっては、ヘッダを認識してくれないかもしれない。</p>
<p></p>
<p></p>
<p><a href="https://github.com/flutterchina/dio/issues/641">https://github.com/flutterchina/dio/issues/641</a></p>
<p>この Issue で議論されているが、実際 RFC では、ヘッダーの大文字小文字は区別なく扱わなければならない、とあるが、現実的にサーバサイドで区別されている場合もあるので、そのような用途だと難しいかもしれない。</p>
<p>ただ、現在プルリクのある V 4.0.0 では直るかもしれない。様子見。</p>
<p><a href="https://github.com/flutterchina/dio/pull/1082">https://github.com/flutterchina/dio/pull/1082</a></p>
<p></p>
<p>ちなみに、http ライブラリに切り替えて試して見た所、同じように ヘッダはすべて小文字化だった。</p>
