ip/resolver: add some more resolvers
This commit is contained in:
parent
534b0d0bbc
commit
7c2ad9384b
2 changed files with 31 additions and 0 deletions
|
|
@ -50,4 +50,15 @@ func init() {
|
||||||
ServiceName: "icanhazip",
|
ServiceName: "icanhazip",
|
||||||
Url: "https://icanhazip.com",
|
Url: "https://icanhazip.com",
|
||||||
})
|
})
|
||||||
|
|
||||||
|
Provide(&httpres.Service{
|
||||||
|
ServiceName: "ipify",
|
||||||
|
Url: "https://api.ipify.org",
|
||||||
|
})
|
||||||
|
|
||||||
|
Provide(&httpres.Service{
|
||||||
|
ServiceName: "myip",
|
||||||
|
Url: "https://api.myip.com",
|
||||||
|
Decoder: MyIPDecoder,
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
|
||||||
20
ip/resolver/myip.go
Normal file
20
ip/resolver/myip.go
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
package resolver
|
||||||
|
|
||||||
|
import (
|
||||||
|
"encoding/json"
|
||||||
|
"io"
|
||||||
|
)
|
||||||
|
|
||||||
|
func MyIPDecoder(r io.Reader) ([]byte, error) {
|
||||||
|
var v struct {
|
||||||
|
Ip string `json:"ip"`
|
||||||
|
Country string `json:"country"`
|
||||||
|
Cc string `json:"cc"`
|
||||||
|
}
|
||||||
|
var val []byte
|
||||||
|
err := json.NewDecoder(r).Decode(&v)
|
||||||
|
if err == nil {
|
||||||
|
val = []byte(v.Ip)
|
||||||
|
}
|
||||||
|
return val, err
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue