Go json-rpc 返回空响应

我正在通过 Go 标准库使用 json-rpc 协议编写客户端-服务器交互。服务器端工作正常,但我无法得到正确的响应,我得到空响应。响应类型是公开的。


服务器端


func (h *Handler) AddUser(request UserAuthRequest, respond *uuid.UUID) error {

    log.Printf("AddUser: request:%+v", request)

    id := uuid.New()

    respond = &id

    log.Printf("%v", respond)  // prints generated ID

    return nil

}

客户端


var x uuid.UUID

err = client.Call(

    "Handler.AddUser",

    &UserAuthRequest{},

    &x,

)

if err != nil {

    log.Fatalf("bad request: %v", err)

}

log.Printf("res: %+v", x)  // prints 00000000-0000-0000-0000-000000000000

我怎样才能得到非空的回应


繁星coding
浏览 124回答 1
1回答

函数式编程

好吧,解决方案非常明显,而不是将指针重新分配respond给&id,我需要更改 的值*respond。所以只需将行更改respond = &id为“仅*respond = id 此而已”
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go