W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
在進(jìn)行調(diào)用時(shí),可以通過(guò) ?callopt.WithURL
? 指定,通過(guò)該 option 指定的 URL,會(huì)經(jīng)過(guò)默認(rèn)的 DNS resolver 解析后拿到 host 和 port,此時(shí)其等效于 ?callopt.WithHostPort
?。
import "github.com/cloudwego/kitex/client/callopt"
...
url := callopt.WithURL("http://myserverdomain.com:8888")
resp, err := cli.Echo(context.Background(), req, url)
if err != nil {
log.Fatal(err)
}
此外也可以自定義 DNS resolver
resolver 定義如下 (pkg/http):
type Resolver interface {
Resolve(string) (string, error)
}
參數(shù)為 URL,返回值為訪問(wèn)的 server 的 “host:port”。
通過(guò) ?client.WithHTTPResolver
? 指定用于 DNS 解析的 resolver。
import "github.com/cloudwego/kitex/client/callopt"
...
dr := client.WithHTTPResolver(myResolver)
cli, err := echo.NewClient("echo", dr)
if err != nil {
log.Fatal(err)
}
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: