/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
Evans(gRPC客戶端)是一個基于Go語言實現(xiàn)的支持交互模式的gRPC客戶端,相比于其他同類軟件,Evans(gRPC客戶端)大大減少了開發(fā)測試時間,使用起來十分的便捷,感興趣的朋友快來下載吧。
Evans的創(chuàng)建是為了比其他現(xiàn)有的gRPC客戶端更容易使用。
如果你想保持你的產(chǎn)品質(zhì)量,你必須使用CI與gRPC測試,不應(yīng)該使用手動測試。
Evans將完成你的其他用例,就像。
手動進行g(shù)RPC API檢查
通過腳本實現(xiàn)一些任務(wù)的自動化
以上用例對應(yīng)于Evans的兩種模式:REPL模式和CLI模式。
動機
創(chuàng)建Evans是為了使其比其他現(xiàn)有g(shù)RPC客戶端更容易使用。 如果要保持產(chǎn)品質(zhì)量,則必須將CI與gRPC測試一起使用,而不應(yīng)該使用手動測試。 Evans將完成您的其他用例,就像:
手動gRPC API檢查
通過腳本自動執(zhí)行某些任務(wù)
上述用例對應(yīng)于Evans的兩種模式,REPL模式和CLI模式。
REPL模式
REPL模式是第一個用例的解決方案。 您可以使用它而無需考慮軟件包名稱,服務(wù)名稱,RPC名稱,命令用法等,因為REPL模式具有強大的完成功能!
CLI模式
CLI模式是無狀態(tài)模式,就像。 顧名思義,它每條命令發(fā)送一個請求。 因此它基于UNIX哲學(xué)。
例如,從stdin讀取輸入,該命令將是過濾器命令。 另一方面,命令結(jié)果將通過JSON格式輸出到stdout 。 因此,您可以使用jq之類的任何命令來格式化它。 另外,如果要使用相同的命令(例如,使用相同的JSON輸入),則可以使用--file ( -f )選項。
目錄
安裝
強烈建議使用GitHub Releases或Homebrew,因為它們可以通過Evans的內(nèi)置功能自動更新。
CLI模式也有一些命令。
list 該命令向gRPC服務(wù)器提供gRPC服務(wù)檢查。
$ evans -r cli列表api.Examplegrpc.reflection.v1alpha.ServerReflection
如果指定了服務(wù)名稱,則顯示屬于該服務(wù)的方法。
$ evans -r cli list api。示例api.Example。一元api.Example.UnaryBytesapi.Example.UnaryEnum...
desc 命令描述了傳遞的符號(服務(wù),方法,消息等)。
api。示例:服務(wù)示例{ rpc一元(.api.SimpleRequest)返回(.api.SimpleResponse); rpc UnaryBytes(.api.UnaryBytesRequest)返回(.api.SimpleResponse); rpc UnaryEnum(.api.UnaryEnumRequest)返回(.api.SimpleResponse); ...}
call命令調(diào)用一個方法。您可以輸入來自stdin或文件的請求。
使用--file(-f)指定文件。
$ cat request.json{ “ name ”: “ ktr ”}$ evans --proto api / api.proto cli調(diào)用--file request.json api.Example.Unary{ “ message ”: “您好,ktr ” }
如果啟用了gRPC反射,則--reflection(-r)可用而不是指定原型文件。
$ evans -r cli調(diào)用--file request.json api.Example.Unary{ “ message ”: “您好,ktr ” }
使用stdin。
$ echo ' {“ name”:“ ktr”} ' | evans cli調(diào)用api.Example。一元{ “ message ”: “您好,ktr ” }
如果.evans.tomlGit項目根目錄中存在,則可以表示默認值。
[默認] protoFile = [ “ api / api.proto ” ]包= “ api ”服務(wù)= “示例”
這樣,該命令將更加清晰。
$ echo ' {“ name”:“ ktr”} ' | evans cli call一元{ “ message ”: “您好,ktr ” }
關(guān)于騰牛 | 聯(lián)系方式 | 發(fā)展歷程 | 版權(quán)聲明 | 下載幫助(?) | 廣告聯(lián)系 | 網(wǎng)站地圖 | 友情鏈接
Copyright 2005-2024 QQTN.com 【騰牛網(wǎng)】 版權(quán)所有 鄂ICP備2022005668號-1 | 鄂公網(wǎng)安備 42011102000260號
聲明:本站非騰訊QQ官方網(wǎng)站 所有軟件和文章來自互聯(lián)網(wǎng) 如有異議 請與本站聯(lián)系 本站為非贏利性網(wǎng)站 不接受任何贊助和廣告