REST API 範例框架

网友投稿 686 2022-10-16

REST API 範例框架

REST API 範例框架

simple_rest

RESTFul API 範例框架

所需套件

套件名稱Version說明官網
golang1.10.3Golang 編譯工具Link
docker18.06.0-cedocker 執行工具,用於建立本機環境Link
docker-compose1.22.0docker-compose 執行工具,用於操作docker指令Link

專案結構

路徑說明
apiRESTFul API 伺服器相關
api/controllerHttp API 流程控制層
api/middlewaregin 框架中間層
api/protocolHttp 通用協定
config設定檔讀取套件
databasemysql 資料庫連線存取套件
service業務邏輯層
env常數
vendor第三方套件
dockerdocker-compose設定檔與mysql設定資料

Usage

啟動Mysql服務

在本專案底下執行:

cd $GOPATH/simple_rest/docker && docker-compose up -d

若要關閉Mysql則執行以下指令:

cd $GOPATH/simple_rest/docker && docker-compose down

啟動 RESTful Server

在本專案底下執行:

cd $GOPATH/simple_rest && go run main.go

此專案預設有提供三組API,啟動服務後,可執行以下語法測試伺服器是否正常運行:

curl -G http://127.0.0.1:8000/v1/get \--data-urlencode "Colors[]=red" \--data-urlencode "Colors[]=green" \--data-urlencode "Name=hank" \--data-urlencode "Birthday=2018-08-14T12:00:00+08:00"

curl -X POST http://127.0.0.1:8000/v1/post -d 'Colors[]=red&Colors[]=green&Name=hank&Birthday=2018-08-14T12:00:00%2d08:00'

curl -G http://127.0.0.1:8000/v1/get?UserID=0

預設三組API

GET範例

GET API 範例,會回傳傳入的資訊

URL: http://127.0.0.1:8000/v1/get

協定: GET

Input:

變數名稱型態是否必要說明
Colors[][]string
Namestring*
Birthdaytime時間格式須為 RFC3339,Example: 2018-08-05T12:00:00+08:00
Addressstring

POST範例

POST API 範例,會回傳傳入的資訊

URL: http://127.0.0.1:8000/v1/post

協定: POST

Input:

變數名稱型態是否必要說明
Colors[][]string
Namestring*
Birthdaytime時間格式須為 RFC3339,Example: 2018-08-05T12:00:00+08:00
Addressstring

取得使用者資訊

從資料庫中撈取使用者資訊

URL: http://127.0.0.1:8000/v1/user

協定: GET

Input:

變數名稱型態是否必要說明
UserIDstring*要撈取的使用者ID

Output:

變數名稱型態說明
IDint32使用者ID
Accountstring使用者帳號
Passwordstring使用者密碼

啟動Mysql時的預設資料結構

此專案使用docker來建置資料庫,其預設資料放在 docker/init_file/init.sql 中

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:为什么你不需要计时器,除了延迟
下一篇:Micrologix1400 ModbusTCP-Slave
相关文章

 发表评论

暂时没有评论,来抢沙发吧~