⊗jsrxPmSDIM 37 of 57 menu

Reduxでのサーバーサイド作業のためのmswのインストール

過去のレッスンで、私たちのアプリケーションにいくつかの追加の変更を加えました。 これから、アプリケーションがデータをやり取りするサーバーについて理解する必要があります。

実際のサーバーは持っていないので、優れたツールであるMock Service Workerを使って、その動作をシミュレートします。 Mock Service Worker (MSW) は、APIを模倣するためのツールで、ネットワークレベルでリクエストをインターセプトするために設計された標準化されたService Worker APIを使用します。MSWは、私たちのリクエスト (requests) に対して模擬的な応答 (responses) を生成します。 しかも、開発者によれば、このツールは非常に効率的で柔軟性があり、モック(そのためにアプリケーションで特別に何かを作成する必要はありません)を使用したデバッグの後、アプリケーションを既に本物の外部サーバーと一緒に運用開始できます。 そのドキュメントは非常に広範で、もしMSWに興味があれば、公式サイトで読むことができます。

では、mswのインストールに移りましょう。 そのために、プロダクトのプロジェクトを開き、ターミナルで以下のコマンドを入力します:

npm install msw --save-dev

mswを動作させるためには、mockServiceWorker.jsを作成し、何らかの公開ディレクトリにコピーする必要もあります。 多くの場合、それはpublicフォルダです。空のpublicフォルダがあるので、そこにコピーしましょう。 そのためには、ターミナルで以下のコマンドを実行し、その後publicの使用に同意します:

npx msw init public

では、publicを確認してみましょう。生成されたスクリプトmockServiceWorker.jsがそこにできているはずです。 次に、プロダクトのアプリケーションを起動し、ブラウザのアドレスバーにhttp://localhost:5173/mockServiceWorker.jsと入力します (私たちのアプリケーションは5173ポートで動作しているため)。 ブラウザのウィンドウにファイルmockServiceWorker.jsの内容が表示されましたか? それなら全て順調です、次に進みましょう。

次に、srcフォルダ内にapiフォルダを作成し、その中にサーバーのコードを書くファイルserver.jsを作成しましょう。 では、server.jsを開き、インストールしたmswライブラリから関数setupWorkerをインポートします:

import { setupWorker } from 'msw/browser'

ファイルの下方で変数workerを作成し、それをエクスポートします:

export const worker = setupWorker()

では、ファイルmain.jsxを開き、そこに私たちのワーカーをインポートしましょう:

import { worker } from './api/server'

次に、それを私たちのアプリケーションに接続しましょう。 そのために、Reactアプリケーションのルートを作成するコードを関数でラップし、それをmainと呼ぶことにします。 その最初の行に、ワーカーの起動用の関数を追加します。 もちろん、main自体の呼び出しを忘れないようにしてください。 すべてのインポート行の後の完全なコードは、以下のようになります:

async function main() { await worker.start({ onUnhandledRequest: 'bypass' }) ReactDOM.createRoot(document.getElementById('root')).render( <React.StrictMode> <Provider store={store}> <App /> </Provider> </React.StrictMode> ) } main()

これで、ワーカーが起動する前に(そしてリクエストを送信する前に ;) )、アプリケーションが動作を開始しないことが確実になります。

では、アプリケーションを起動し、ブラウザで開発者コンソールを開いてみましょう。 コンソールに '[MSW] Mocking enabled.' というテキストが表示されていれば、あなたは素晴らしく、すべてを正しくインストールしています!!!

あなたの学生管理アプリケーションを開いてください。 このレッスンの内容を確認した後、あなたのアプリケーション用にMock Service Workerをインストールしてください。

ファイルserver.jsを作成し、その中にワーカーを作成してください。 レッスンで示したように、ワーカーをmain.jsのアプリケーションに接続してください。すべてが動作することを確認してください。

日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否