[POB#33]Assignment 9:FayWork社の課題.json-serverによる一時サーバの実装
11773 ワード
Assignment 9:顔の技術的な難題をまとめた文章です.
json-serverによる一時サーバの実装
インストール:
使用するjsonファイルの生成:jsonファイルを生成し、初期データを生成します.
サーバーの実行:
postmanとしてテスト
postmanを使用して予測試験を行うことができます.GET要求
GET、POST、DELETE、PATCH、およびPUTを含む様々なAPIが提供される.
herokuを使用して
ルートフォルダの下にある
ポート値を直接入力するのではなく、heroku内部のポートを設定する必要があります.( process.env.PORT )
heakuデフォルトコマンドstartで設定したサーバ実行コードを作成します.
既存のstartをstart:devに変更します.
heroku-portbuildを使用して、導入前の構築手順を行います.
json-serverによる一時サーバの実装 Redux-Saga
を使用して実際のネットワーク通信を行うために、json-server
を使用して一時サーバを実現しました.
インストールと使用
インストール:
yarn add json-server
使用するjsonファイルの生成:jsonファイルを生成し、初期データを生成します.
//src 밑에 data.json 생성
{
"todos": []
}
サーバーの実行:
json-server ./data.json --port 4000
portを指定してサーバを実行することで、localhost:${port 번호}
にアクセスできます.postmanとしてテスト
postmanを使用して予測試験を行うことができます.GET要求
localhost:4000/todos
により、初期データを表示することができる.POST要求はBody作成を読み込むことができる.プロジェクトのdata.json
も変更されます.REST APIの提供
json-server
は、REST APIサーバのすべての基本機能を有する.GET、POST、DELETE、PATCH、およびPUTを含む様々なAPIが提供される.
// 예시
// BASE_URL : localhost:4000
// END_POINT: todos
const client = axios.create();
client.defaults.baseURL = BASE_URL;
export const getTodosData = () => client.get(`/${END_POINT}`);
export const createTodoData = ({ content, isCheck, createAt }: ITodo) =>
client.post(`/${END_POINT}`, { content, isCheck, createAt });
export const deleteTodoData = (id: number) =>
client.delete(`/${END_POINT}/${id}`);
export const completeCheckTodoData = ({ id, isCheck }: ITodo) =>
client.patch(`/${END_POINT}/${id}`, { isCheck });
配置
herokuを使用して
json-server
と一緒に配布します.サーバの設定
ルートフォルダの下にある
server.ts
にサーバ設定コードを作成します.ポート値を直接入力するのではなく、heroku内部のポートを設定する必要があります.( process.env.PORT )
const jsonServer = require("json-server");
const server = jsonServer.create();
const router = jsonServer.router("./data.json");
const middlewares = jsonServer.defaults({
static: "./build",
});
const port = process.env.PORT || 4000;
server.use(middlewares);
server.use(
jsonServer.rewriter({
"/api/*": "/$1",
})
);
server.use(router);
server.listen(port, () => {
console.log("server is running");
});
package.jsonの変更
package.json
のscripts
を変更します.heakuデフォルトコマンドstartで設定したサーバ実行コードを作成します.
既存のstartをstart:devに変更します.
heroku-portbuildを使用して、導入前の構築手順を行います.
"scripts": {
"start": "node server.ts",
"start:dev": "react-scripts start",
"build": "react-scripts build",
"heroku-postbuild": "npm run build"
},
BASE URLの変更
localhost:4000
としてBASE URLをローカル環境で使用しています.配置するときは、herokuアドレスに変更してください.export const BASE_URL = `https://my-app.herokuapp.com/`;
Reference
この問題について([POB#33]Assignment 9:FayWork社の課題.json-serverによる一時サーバの実装), 我々は、より多くの情報をここで見つけました https://velog.io/@tunakim/POB33-Assignment-9-페이워크-기업-과제.-json-server로-임시-서버-구현テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol