Axios を使用した JavaScript での単純な HTTP リクエスト
JavaScript の学習に興味がありますか? jshandbook.com で私の電子ブックを入手してください
はじめに
Axios は、HTTP リクエストの実行に使用できる非常に人気のある JavaScript ライブラリです。ブラウザと Node.js プラットフォームの両方で動作します。
IE8 以降を含む最新のブラウザをすべてサポートしています。
これは promise ベースであり、これにより async/await コードを記述して XHR リクエストを非常に簡単に実行できます。
Axios を使用すると、ネイティブの Fetch API よりも多くの利点があります。
- 古いブラウザをサポート (Fetch にはポリフィルが必要)
- リクエストを中止する方法があります
- 応答タイムアウトを設定する方法があります
- CSRF 保護が組み込まれています
- アップロードの進行状況をサポート
- 自動 JSON データ変換を実行します
- Node.js で動作
インストール
Axios は npm を使用してインストールできます:
npm install axios または糸:
yarn add axios または、unpkg.com を使用してページに含めるだけです:
<script src="https://unpkg.com/axios/dist/axios.min.js"><;/script> Axios API
axios から HTTP リクエストを開始できます。 オブジェクト:
axios({ url: 'https://dog.ceo/api/breeds/list/all', method: 'get', data: { foo: 'bar' }}) ただし、便宜上、通常は
axios.get()axios.post()
(jQuery と同様に、$.get() を使用します) と $.post() $.ajax() の代わりに )
Axios はすべての HTTP 動詞のメソッドを提供します。これらはあまり一般的ではありませんが、まだ使用されています:
axios.delete()axios.put()axios.patch()axios.options()
また、ボディを破棄してリクエストの HTTP ヘッダーを取得する方法も提供します。
GET リクエスト
Axios を使用する便利な方法の 1 つは、最新 (ES2017) の async/await 構文を使用することです。
この Node.js の例では、axios.get() を使用して、Dog API にクエリを実行し、すべての犬種のリストを取得します。 、そしてそれらを数えます:
const axios = require('axios')const getBreeds = async () => { try { return await axios.get('https://dog.ceo/api/breeds/list/all') } catch (error) { console.error(error) }}const countBreeds = async () => { const breeds = await getBreeds() if (breeds.data.message) { console.log(`Got ${Object.entries(breeds.data.message).length} breeds`) }}countBreeds() async/await を使用したくない場合は、Promises 構文を使用できます:
const axios = require('axios')const getBreeds = () => { try { return axios.get('https://dog.ceo/api/breeds/list/all') } catch (error) { console.error(error) }}const countBreeds = async () => { const breeds = getBreeds() .then(response => { if (response.data.message) { console.log( `Got ${Object.entries(response.data.message).length} breeds` ) } }) .catch(error => { console.log(error) })}countBreeds() GET リクエストにパラメータを追加
GET 応答には、次のように URL にパラメーターを含めることができます:https://site.com/?foo=bar .
Axios では、その URL を使用するだけでこれを実行できます:
axios.get('https://site.com/?foo=bar')
または params を使用できます オプションのプロパティ:
axios.get('https://site.com/', { params: { foo: 'bar' }}) POST リクエスト
POST リクエストの実行は GET リクエストの実行に似ていますが、axios.get の代わりに 、あなたは axios.post を使用します :
axios.post('https://site.com/') POST パラメータを含むオブジェクトは 2 番目の引数です:
axios.post('https://site.com/', { foo: 'bar' }) JavaScript の学習に興味がありますか? jshandbook.com で私の電子ブックを入手してください
-
JavaScriptオブジェクトの配列で配列のメソッドを使用していますか?
以下は、JavaScriptオブジェクトの配列で配列のメソッドを使用するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <styl
-
JavaScriptでプライバシーを実現するためのクロージャの使用
以下は、JavaScriptでプライバシーを実現するためのクロージャを実装するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <s