-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.go
45 lines (36 loc) · 967 Bytes
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package goym
import (
"context"
"github.com/oklookat/goym/schema"
"github.com/oklookat/vantuz"
)
const (
_errPrefix = "goym"
)
// Получить Client для запросов к API.
//
// accessToken - его можно получить выполнив авторизацию в Яндексе.
func New(accessToken string) (*Client, error) {
httpCl := vantuz.C().SetAuthorization("OAuth " + accessToken)
cl := &Client{
Http: httpCl,
}
cl.SetUserAgent("goym")
status, err := cl.AccountStatus(context.Background())
if err != nil {
return nil, err
}
cl.UserId = status.Result.Account.UID
return cl, err
}
// Клиент для запросов к API.
type Client struct {
// ID текущего пользователя.
UserId schema.ID
// Отправляет запросы.
Http *vantuz.Client
}
// Установить user agent для запросов.
func (c *Client) SetUserAgent(val string) {
c.Http.SetUserAgent(val)
}