最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

TShock高階應(yīng)用:REST API

2021-04-26 23:13 作者:hufang360  | 我要投稿

簡(jiǎn)單來(lái)說(shuō)這是一種全新的給服務(wù)器下達(dá)指令的方法,只需在瀏覽器輸入連接即可。

REST,即Representational State Transfer的縮寫(xiě),大意是"表現(xiàn)層狀態(tài)轉(zhuǎn)化"。它是前后端分離最佳實(shí)踐,是開(kāi)發(fā)的一套規(guī)范,不是框架。

開(kāi)啟REST功能

將config.json中的“RestApiEnabled”改為true,重新開(kāi)服。

在瀏覽器訪(fǎng)問(wèn) “http://127.0.0.1:7878”。如果是服務(wù)器,請(qǐng)將127.0.0.1改成你服務(wù)器的ip,你將看到如下內(nèi)容:

獲得token(令牌)

訪(fǎng)問(wèn)“http://127.0.0.1:7878/v2/token/create?username=hf&password=1234”,請(qǐng)將 hf 和 1234 是你服務(wù)器里的玩家名和對(duì)應(yīng)的密碼。

如下圖所示,“2251F1D......56A63”就是token,接下來(lái)的很多操作都需要提供token。

測(cè)試token

訪(fǎng)問(wèn)“http://127.0.0.1:7878/tokentest?token=xxx”可以測(cè)試token是否有效,status為200說(shuō)明有效,status為403說(shuō)明無(wú)效。



token持久化

通過(guò)上述方式生成token,將在服務(wù)器重啟后失效。要想token持久有效,可以直接寫(xiě)進(jìn)config.json里,下面是配置參考。

如下圖所示,你可以設(shè)置1個(gè)或多個(gè)token,甚至可以將token定義成 simpleToken 這種,方便記憶,但為了安全,最好弄一個(gè)別人猜不到的token。token對(duì)應(yīng)的用戶(hù)名和用戶(hù)所屬組,應(yīng)正確填寫(xiě)。





案例1:查詢(xún)?cè)诰€(xiàn)玩家

通過(guò)“/lists/players”可以查詢(xún)?cè)诰€(xiàn)玩家,http://127.0.0.1:7878/lists/players?token=simpleToken。

案例2:執(zhí)行命令行指令

要查詢(xún)?cè)诰€(xiàn)玩家情況,還可以通過(guò)“/v3/server/rawcmd”接口,讓服務(wù)器執(zhí)行命令行指令,并返回命令行輸出。http://127.0.0.1:7878/v3/server/rawcmd?token=simpleToken&cmd=/playing。

此接口如萬(wàn)金油般地存在,命令行上能做的接口都能做。而且對(duì)于服主和玩家來(lái)說(shuō)指令反而比接口要更加親切。

實(shí)踐:重置密碼

目前我還不知道如何查看用戶(hù)的密碼,有聯(lián)機(jī)的小伙伴忘記密碼,我只能通過(guò)編輯tshock.sqlite數(shù)據(jù)庫(kù),復(fù)制一個(gè)新的人物給他,但是接口提供了重置密碼的可能。

通過(guò)“/v2/users/update”接口重置用戶(hù)密碼,http://127.0.0.1:7878/v2/users/update?token=simpleToken&user=hf&password=1234


更多接口

官方文檔列舉了不少接口,但個(gè)人覺(jué)得實(shí)用性并不強(qiáng),很多功能都可以通過(guò) rawcmd 接口來(lái)實(shí)現(xiàn),感興趣的可以去官方文檔查詢(xún)。

官方文檔:https://tshock.readme.io/reference

轉(zhuǎn)載:https://www.yuque.com/hufang/bv/reference


更多接口:VSCode

REST API非常有規(guī)律,但一個(gè)個(gè)的參數(shù)拼接起來(lái)后,地址就變得很長(zhǎng),不易閱讀,很容易出錯(cuò)。

實(shí)際測(cè)試,有使用兩個(gè)工具。一個(gè)是 VSCode + REST Client,另一個(gè)是 Postman。我用這這兩個(gè)工具測(cè)試了將近全部接口,大家可以拿來(lái)測(cè)試,以了解接口使用和特性。


REST Client是一個(gè)VSCode插件,可以在VSCode搜索安裝。


安裝好插件后,新建例如 “TShock-REST-API.http”的文檔,其中“.http”是文件的擴(kuò)展名,然后將下面的代碼粘貼進(jìn)去

所有的接口都保存在這一個(gè) http 文件里,點(diǎn)擊鏈接上方的 “Send Request”文字超鏈接,可以執(zhí)行接口請(qǐng)求,并且在右側(cè)面板會(huì)返回請(qǐng)求結(jié)果。



更多接口:Postman

相比VSCode加插件的方式,Postman使用起來(lái)更加清晰優(yōu)雅,壞處就是錄入比較麻煩,而且工具使用起來(lái)也有一點(diǎn)門(mén)檻。為了讓大家能上手使用,我將所有接口導(dǎo)出成json了,在Postman里點(diǎn)擊Import按鈕,選擇json進(jìn)行導(dǎo)入。



VSCode 和 Postman 的測(cè)試物料以及安裝包都放網(wǎng)盤(pán)了

鏈接:https://pan.baidu.com/s/1jE3GAK3STdkJL1YgvwD8fw

提取碼:rest


TShock高階應(yīng)用:REST API的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
铜陵市| 苍梧县| 安国市| 盐城市| 遂溪县| 麻江县| 静安区| 临猗县| 江口县| 湘西| 武夷山市| 双柏县| 海原县| 盐源县| 江津市| 留坝县| 桦南县| 新营市| 乌苏市| 南宁市| 彝良县| 南澳县| 新蔡县| 买车| 比如县| 石狮市| 安阳市| 武冈市| 织金县| 河北省| 定陶县| 综艺| 塔城市| 凉城县| 弥勒县| 龙里县| 安宁市| 合肥市| 监利县| 海南省| 沙洋县|