check / check (push) Canceled after 0s
The AS Name Search card on the home page said the search was coming
soon. It now asks the new GET /api/v1/search/as?q=<text>, which
searches the AS list built into asinfo, and lists the matches as links
to their AS pages. An empty q answers 400. asinfo.Search now ignores
case and returns its matches in AS number order.
A match can be an AS that the database does not hold yet. Its AS page
and /api/v1/as/{asn} now answer with its handle and description from
asinfo and no prefixes, instead of 404. Empty prefix lists in that JSON
answer are [] rather than null.
Model: opus-5-5
30 lines
628 B
Go
30 lines
628 B
Go
package asinfo_test
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"git.eeqj.de/sneak/routewatch/pkg/asinfo"
|
|
)
|
|
|
|
func ExampleGet() {
|
|
info, ok := asinfo.Get(15169)
|
|
if ok {
|
|
fmt.Printf("AS%d: %s - %s\n", info.ASN, info.Handle, info.Description)
|
|
}
|
|
// Output: AS15169: GOOGLE - Google LLC
|
|
}
|
|
|
|
func ExampleGetDescription() {
|
|
desc := asinfo.GetDescription(13335)
|
|
fmt.Println(desc)
|
|
// Output: Cloudflare, Inc.
|
|
}
|
|
|
|
func ExampleSearch() {
|
|
results := asinfo.Search("mit-gateway")
|
|
for _, info := range results {
|
|
fmt.Printf("AS%d: %s - %s\n", info.ASN, info.Handle, info.Description)
|
|
}
|
|
// Output: AS3: MIT-GATEWAYS - Massachusetts Institute of Technology
|
|
}
|