axios - Node.js

  • 作成日:
  • 最終更新日:2025/11/04

axios(アクシオス) とは?

axiosを使うと、以下のようなことができます。

処理内容 説明
GETリクエスト サーバーからデータを取得する(例:ニュース一覧を取得)
POSTリクエスト サーバーにデータを送信する(例:ユーザー登録)
PUT / DELETE データの更新や削除
JSON自動変換 JSONを自動でJavaScriptオブジェクトにしてくれる
エラーハンドリング 通信エラーを簡単に扱える
ヘッダー設定 認証トークンなどを簡単に追加できる

ライブラリをインストールするには、以下のコマンドを実行します。

npm install axios

使用例

GETリクエストを使ってデータを取得するには、以下のようにします。

const axios = require('axios');

axios.get('https://api.example.com/users')
  .then(response => {
    console.log(response.data); // 取得したデータ
  })
  .catch(error => {
    console.error(error); // エラー処理
  });

POSTリクエストでデータを送信するには、以下のようにします。

const axios = require('axios');

axios.post('https://api.example.com/users', {
  name: 'Taro',
  email: 'taro@example.com'
})
  .then(response => {
    console.log(response.data); // 結果
  })
  .catch(error => {
    console.error(error);
  });

HTMLの要素を取り出す

axios はHTML通信を行うためのライブラリのため、HTMLの「 文字列 」を取得するところまでしか行いません。

HTMLの文字列から要素を取り出したい場合は、HTMLパーサー(解析ライブラリ)を使います。

Node.js のHTML/XMLパーサーには、Cheerio(チェリオ)があります。

Cheerioは、主にウェブスクレイピング(Web Scraping)やHTMLの解析・操作に使われるライブラリです。

Express Generator で作成したアプリのindex.ejsのファイルの内容を取得します。

Express.jsのアプリを起動した状態で、以下のファイルを実行します。

const axios = require('axios');
const cheerio = require('cheerio');

(async () => {
  try {
    // HTMLを取得
    const response = await axios.get('http://localhost:3000');

    // cheerioでHTMLを読み込む
    const $ = cheerio.load(response.data);

    // タイトル要素を取得
    const title = $('h1').text();  // h1タグの中のテキスト
    console.log('タイトル:', title);

    // 複数要素をループして取得
    $('p').each((i, elem) => {
      console.log('段落', i + 1, ':', $(elem).text());
    });

  } catch (error) {
    console.error('取得エラー:', error);
  }
})();

結果
-------------------------------------------
タイトル: Express
段落 1 : Welcome to Express