我有一个想法,在Go中使用接口来定义RPC样式接口.所以对于给定的服务,我可能会创建一个这样的接口:
type MyService interface{
Login(username, password string) (sessionId int, err error)
HelloWorld(sessionId int) (hi string, err error)
}
Run Code Online (Sandbox Code Playgroud)
我想要做的是使用反射来实现该接口,将方法调用转换为RPC调用,对输入参数进行封送,并将结果解组回到方法的输出中.我知道如果我能得到输入参数的[]接口{},我可以使用反射来进行服务调用.但是,我没有看到任何方法使用反射动态创建一个值,通过调用我的反射使用函数来实现接口.有没有人知道这样做的方法,即使使用不安全?