// sdk · Go
Go SDK cho API AstroWay
Module Go chính thức của AstroWay: mỗi endpoint API là một phương thức, ví dụ aw.Chart.Compute, kèm context trong mọi cuộc gọi. Thử lại khi nhận 408/409/429/5xx tuân theo Retry-After, và POST giữ Idempotency-Key, nên gọi lại không bị tính phí hai lần. Lỗi được kiểm tra bằng errors.Is, và phản hồi được giải mã vào kiểu của bạn. Chỉ dùng thư viện chuẩn, Go 1.22+.
// 01 / install
Cài đặt
go get github.com/astroway/astroway-go import: astroway "github.com/astroway/astroway-go"
Xem trong sổ đăng ký → github.com/astroway/astroway-go
// 02 / highlights
Điểm nổi bật
- 725 phương thức từ spec OpenAPI
- context.Context trong mọi gọi
- Thử lại với Retry-After, Idempotency-Key
- errors.Is: ErrQuotaExceeded, ErrRateLimit
- Chỉ thư viện chuẩn
// 03 / first request
Yêu cầu đầu tiên
package main
import (
"context"
"fmt"
"log"
"os"
astroway "github.com/astroway/astroway-go"
)
func main() {
aw := astroway.New(os.Getenv("ASTROWAY_API_KEY"))
res, err := aw.Chart.Compute(context.Background(), map[string]any{
"date": "1990-07-14", "time": "14:30:00", "timezoneOffset": 3,
"latitude": 50.4501, "longitude": 30.5234, "houseSystem": "P",
})
if err != nil {
log.Fatal(err)
}
var chart struct {
Houses struct {
Ascendant float64 `json:"ascendant"`
} `json:"houses"`
}
if err := res.Decode(&chart); err != nil {
log.Fatal(err)
}
fmt.Println(chart.Houses.Ascendant) // 212.0952574979425
} Bắt đầu với Go
10.000 credits miễn phí mỗi tháng. SDK mã nguồn mở, được tạo từ OpenAPI 3.1, luôn đồng bộ với backend.