🐿 XMLHttpRequestの処理の流れまとめ② 【setRequestHeaderについて】
作成日: 2021/12/19
0

XMLHttpRequestの処理の流れまとめ①の続き

https://ticketnote.dev/ticket/Rt45ug3bNyW4W4023qkE

openメソッドでgetを指定しているが、これをpostに書き換えると以下の通り。

xhr.open('GET', 'hello_ajax.php?name=' + encodeURIComponent(document.getElementById('name').value), true);
xhr.send(null);

↓↓↓

xhr.open('POST', 'hello_ajax.php', true)
xhr.setRequestHeader('content-type', 'application/x-www-form-urlencoded;charset=UTF-8')
xhr.send('name=' + encodeURIComponent(document.getElementById('name').value));

setRequestHeaderメソッドとは?

https://developer.mozilla.org/ja/docs/Web/API/XMLHttpRequest/setRequestHeader

・HTTPリクエストについて
https://wa3.i-3-i.info/word1844.html

・XMLHttpRequestについて。 もっと言えば、setRequestHeader() について。
https://qiita.com/H40831/items/69f06dc98a6c446c817c

第二引数は

content-typeとは?

HTTPリクエストヘッダーの種類
content-typeが多い。

application/x-www-form-urlencoded;charset=UTF-8は何を指定しているのか?

【参考】XMLHttpRequestについて。 もっと言えば、setRequestHeader() について。
https://qiita.com/H40831/items/69f06dc98a6c446c817c

定型がありそう。上記記事によれば、種類は以下の通り。

  • application/x-www-form-urlencoded
    送信データは「テキストである」という指定

  • multipart/form-data
    画像、ファイルの送信

  • application/json
    json形式の送信

  • charset=utf-8
    送信データの文字形式をutf-8で指定

複数指定の場合は、;で区切る
【使用例】↓↓↓

xhr.sendRequestHeader('content-type', application/x-www-form-urlencoded;charset=uft-8)

疑問点

getpostxhr.open()xhr.send()の引数の中身が変わる点をもう少し深堀


事業会社にてコーダーをしています。制作は6年目。 インプットしたことをアウトプットしています。