我想將我的服務(wù)導(dǎo)出為 RPC 服務(wù),我的本地方法是從 db 獲取所有用戶(結(jié)構(gòu)類型),如下所示,func GetUsers() ([]model.User) { // business logic}現(xiàn)在我將方法包裝為 RPC 模式,如下所示,func (api *API) RpcGetUsers(_, reply []*model.User) error { reply = dal.GetUsers() return nil}但是當(dāng)我運行該函數(shù)時,發(fā)生了恐慌。它提到“方法“RpcGetUsers”的回復(fù)類型不是指針:“[]*model.User””我該如何解決這個問題?
1 回答

呼喚遠(yuǎn)方
TA貢獻(xiàn)1856條經(jīng)驗 獲得超11個贊
RPC 文檔說該方法必須如下所示:
func (t *T) MethodName(argType T1, replyType *T2) error
所以你需要一個請求和一個回復(fù)類型。你可以這樣做:
type Empty struct{}
type Users struct {
Users []model.User
}
func (api *API) RpcGetUsers(_ *Empty, reply *Users) error {
...
}
- 1 回答
- 0 關(guān)注
- 179 瀏覽
添加回答
舉報
0/150
提交
取消