{"id":406,"date":"2022-08-02T15:06:03","date_gmt":"2022-08-02T07:06:03","guid":{"rendered":"https:\/\/www.db2go.net\/?p=406"},"modified":"2022-08-02T15:06:03","modified_gmt":"2022-08-02T07:06:03","slug":"net-rpc","status":"publish","type":"post","link":"https:\/\/www.db2go.net\/?p=406","title":{"rendered":"net\/rpc"},"content":{"rendered":"<p>Server\uff1a<\/p>\n<pre><code class=\"language-go line-numbers\">type MyDBService struct {}\n\nfunc(ms *MyDBService) GetDbName(port int,dbName *string) error  {\n   if port==1521{\n    *dbName=\"Oracle\"\n   }else if port==3306{\n       *dbName=\"MySQL\"\n   }else{\n       *dbName=\"none\"\n   }\n    return nil\n}\n\nfunc main(){\n    lis,_:=net.Listen(\"tcp\",\":8081\")\n    rpc.Register(new(MyDBService))\n\n    for{\n        client,err:=lis.Accept()\n        if err!=nil{\n            panic(err)\n        }\n        rpc.ServeConn(client)\n    }\n}\n<\/code><\/pre>\n<p>Client\uff1a<\/p>\n<pre><code class=\"language-go line-numbers\">func main() {\n    client, err := rpc.Dial(\"tcp\", \":8081\")\n    if err != nil {\n        panic(err)\n    }\n    dbName := \"\"\n    err = client.Call(\"MyDBService.GetDbName\", 1521, &amp;dbName)\n    if err != nil {\n        fmt.Println(err)\n        return\n    }\n    fmt.Println(dbName)\n}\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Server\uff1a type MyDBService struct {} func(ms *MyDBService&hellip;<\/p>\n <a href=\"https:\/\/www.db2go.net\/?p=406\" title=\"net\/rpc\" class=\"entry-more-link\"><span>Read More<\/span> <span class=\"screen-reader-text\">net\/rpc<\/span><\/a>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"Layout":"","footnotes":""},"categories":[12],"tags":[],"class_list":["entry","author-suredandan","post-406","post","type-post","status-publish","format-standard","category-golang"],"views":1441,"_links":{"self":[{"href":"https:\/\/www.db2go.net\/index.php?rest_route=\/wp\/v2\/posts\/406","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.db2go.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.db2go.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.db2go.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.db2go.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=406"}],"version-history":[{"count":1,"href":"https:\/\/www.db2go.net\/index.php?rest_route=\/wp\/v2\/posts\/406\/revisions"}],"predecessor-version":[{"id":407,"href":"https:\/\/www.db2go.net\/index.php?rest_route=\/wp\/v2\/posts\/406\/revisions\/407"}],"wp:attachment":[{"href":"https:\/\/www.db2go.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=406"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.db2go.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=406"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.db2go.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=406"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}