XMLHttpRequestよりfetchの方が簡単

XMLHttpRequestよりfetchの方が簡単

JSからPHPとの連携する際にXMLHttpRequestを使用する方法もありますが、fetchを使った方法が記述が簡単だったのでfetchとXMLHTTPRequestを比べて紹介してみたいと思います。

XMLHttpREquestを使用した書き方

let url = '';
		let request = new XMLHttpRequest();

		request.onreadystatechange = () => {
			if( request.readyState == 4 ) {
				if( request.status == 200 ) {
				    console.log( request.response );
				}
			}
		};

		request.open( 'POST', url, true);
		request.setRequestHeader( 'content-type', 'application/x-www-form-urlencoded;charset=UTF-8' );
		request.send('id=2&name=太郎');

fetchの場合

    const data = {
			method: 'POST',
			headers: { 'content-type': 'application/x-www-form-urlencoded;charset=UTF-8' },
			body: 'id=2&name=太郎'
		}

		fetch( url, data )
			.then( ( response ) => response.text() )
      .then( (text) => console.log(text) )

通信を行うための情報の記載等かなり簡略化されています。

また、通信完了時の受けったデータについても処理が書きやすいです。

上の例ではPromiseを使用した書き方ですが、async awaitを使用した書き方も可能です。