- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我正在使用 gowsdl
在 Go 中使用 SOAP
请求。我得到了 WSDL
并使用它生成了代码。在自动生成的代码中,它生成了 stub ,下面提到了一些代码片段。
我必须进行 SOAP
调用,并且必须将 GetAllPersons struct
作为输入传递给服务。请帮帮我,我们该怎么做?我有请求 xml
但不知道如何在 GetAllPersons struct
中更新它?
persons, err := service.GetAllPersons(request)
type GetAllPersons struct {
XMLName xml.Name `xml:"http://service.jaxws.journaldev.com getAllPersons"`
}
并且根据 Go 规范,使用 sybtax VariableName Type
声明变量。上面 struct
中的第三个值 xml:"http://service.jaxws.journaldev.com getAllPersons"
是什么?
最佳答案
下面是我用 gowsdl
生成的代码想出的代码。
main(){
basicauth := personService.BasicAuth{"",""}
service := personService.NewPersonServiceImpl("", false, &basicauth)
persons, err := service.GetAllPersons(&personService.GetAllPersons{})
if err != nil {
panic(err)
}
fmt.Println(persons)
fmt.Printf("Alive?: %t\n", persons.GetAllPersonsReturn[0].Name)
fmt.Printf("Alive?: %t\n", persons.GetAllPersonsReturn[1].Name)
fmt.Printf("Alive?: %t\n", persons.GetAllPersonsReturn[0].Id)
fmt.Printf("Alive?: %t\n", persons.GetAllPersonsReturn[1].Id)
fmt.Printf("Alive?: %t\n", persons.GetAllPersonsReturn[0].Age)
fmt.Printf("Alive?: %t\n", persons.GetAllPersonsReturn[1].Age)
fmt.Printf(persons.GetAllPersonsReturn[0].Name)
request := &personService.AddPerson{P: &personService.Person{Age: 24, Name: "Govinda", Id: 55555555}}
trial, err := service.AddPerson(request)
if err != nil {
panic(err)
}
}
对于第二个问题,感谢 Volker 在评论中提到答案。类型后的这些字符串称为标签(请参阅 golang.org/ref/spec#Struct_types),通常在从序列化格式(如 xml)进行(取消)编码期间使用
关于xml - 使用 gowsdl 进行 SOAP 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47300735/
我刚开始使用 golang 和 SOAP 服务。我想使用 gowsdl 连接 SOAP 服务器。我使用 gowsdl 生成并获得了 myservice.go。接下来我需要做什么? 最佳答案 根据生成的
我正在使用 gowsdl 在 Go 中使用 SOAP 请求。我得到了 WSDL 并使用它生成了代码。在自动生成的代码中,它生成了 stub ,下面提到了一些代码片段。 我必须进行 SOAP 调用,并且
我是一名优秀的程序员,十分优秀!