테스트 서버 구축이 번거로워서 모듈 서버 도구를 만들었습니다.
11420 단어 GoTypeScript모바일 서버idea
왜 그랬어
요즘 프런트가 재미있어요.제이스라, 리액트.js를 썼지만 서버를 만들기 전에 내부 코드로 모크를 싸서 썼습니다.
그러나 이렇게 되면 API 통신 주변이 모두 TODO여서 최종 코드 수정이 비교적 많을 것이다↓.
hoge.ts
import * as mock from "./data.json"
// データを全権取得
const getDataList = (): Data[] => {
const list = mock.list;
// TODO: API通信を後から頑張る!!!!
...
}
그래서 JSON 서버 모쿠 서버를 만들었으면 좋겠는데, 내 악마가 어차피 해야 한다고 속삭여서 다음과 같은 조건에 맞게 모쿠 서버 도구를 만들었어!이것은 설정 파일과 JSON 파일 (응답용) 을 손쉽게 준비할 수 있는 명령행 도구입니다.
디렉터리 등에서 설정 파일과 JSON을 종합하면 팀 공유를 통해 같은 환경을 재현할 수 있습니다!
README에 엉망진창으로 쓴 것 같지만 비교적 간단합니다!다음 손 순서
절차.
1. 설치
우선 설치를 하고 Go가 있으면 간단하게 설치할 수 있습니다.
단말기
$ go install github.com/gari8/sub-server@latest
2. 디렉토리 만들기
작업용 카탈로그를 만들어 보도록 하겠습니다.
단말기
$ mkdir fuga && cd fuga
3. 데이터 반납 준비
2에서 만든 디렉토리에서 사운드 애플리케이션을 준비할 JSON입니다.이번에는 두 가지를 준비해 보도록 하겠습니다.
[
{
"id": 1,
"title": "hoge"
},
{
"id": 2,
"title": "hogehoge"
},
{
"id": 3,
"title": "hogehogehoge"
},
{
"id": 4,
"title": "hogehogehogehoge"
}
]
post.json{
"id": 5,
"title": "hogehogehogehogehoge"
}
4. 파일의 생성, 설명 설정
이런 느낌의 도구는 파일 설정이 좀 번거로울 수 있지만, 이번에는
sub-server init
명령으로 파일 config를 설정합니다.Toml을 생성할 수 있으니까 이것만 만지작거려!단말기
$ sub-server init
config.toml(방금 생성됨)[app]
server_name = "server name"
port = "8080"
[routing]
root_path = "."
origin_root = "/app/v1"
[[routing.origins]]
id = 0
uri = "/start"
file_path = "index.json"
method = "GET"
[[routing.origins]]
id = 1
uri = "/start/1"
file_path = "1/index.json"
method = "GET"
[[routing.origins]]
id = 2
uri = "/start"
file_path = "post.json"
method = "POST"
↑ 이렇게 생성되지만 필요 없는 부분도 많기 때문에 이번 설정에 맞춰 최소한 아래와 같다.config.toml
[app]
port = "8000"
[routing]
root_path = "."
origin_root = "/api/v1/hoge"
[[routing.origins]]
file_path = "index.json"
method = "GET"
[[routing.origins]]
file_path = "post.json"
method = "POST"
5. 서버 시작
지금까지의 절차에 따라 구성됐다고 생각합니다.
fuga
├── config.toml
├── index.json
└── post.json
드디어 서버를 시작할 때가 왔습니다!sub-server serve
명령해!아스키 아트와 URL을 아래와 같이 표시할 수 있었으면 좋겠어요!단말기
$ sub-server serve
░██████╗██╗░░░██╗██████╗░ ░██████╗███████╗██████╗░██╗░░░██╗███████╗██████╗░
██╔════╝██║░░░██║██╔══██╗ ██╔════╝██╔════╝██╔══██╗██║░░░██║██╔════╝██╔══██╗
╚█████╗░██║░░░██║██████╦╝ ╚█████╗░█████╗░░██████╔╝╚██╗░██╔╝█████╗░░██████╔╝
░╚═══██╗██║░░░██║██╔══██╗ ░╚═══██╗██╔══╝░░██╔══██╗░╚████╔╝░██╔══╝░░██╔══██╗
██████╔╝╚██████╔╝██████╦╝ ██████╔╝███████╗██║░░██║░░╚██╔╝░░███████╗██║░░██║
╚═════╝░░╚═════╝░╚═════╝░ ╚═════╝░╚══════╝╚═╝░░╚═╝░░░╚═╝░░░╚══════╝╚═╝░░╚═╝
GET >> http://localhost:8000/api/v1/hoge
POST >> http://localhost:8000/api/v1/hoge
표시된 엔드포인트에 실제로 액세스하면 Toml에 지정된 JSON의 값이 반환됩니다.이렇게 완성!
Giithub에 올리면 마지막 지령만 있으면 서버를 시작할 수 있으니 편리하죠~ 꼭 사용하세요~
그럼 다음 기사!
Reference
이 문제에 관하여(테스트 서버 구축이 번거로워서 모듈 서버 도구를 만들었습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/gari8/articles/af95c50a2b688b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)