-
Notifications
You must be signed in to change notification settings - Fork 0
/
swagger_consumer.go
49 lines (40 loc) · 1.23 KB
/
swagger_consumer.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
46
47
48
49
package main
import (
"fmt"
httptransport "github.com/go-openapi/runtime/client"
"github.com/go-openapi/strfmt"
// "../sess-client/client"
apiClient "coursera/microservices/swagger/sess-client/client"
auth "coursera/microservices/swagger/sess-client/client/auth_checker"
models "coursera/microservices/swagger/sess-client/models"
)
func main() {
// using grpc-gateway as backend
transport := httptransport.New("127.0.0.1:8080", "", []string{"http"})
client := apiClient.New(transport, strfmt.Default)
sessManager := client.AuthChecker
// создаем сессию
sessId, err := sessManager.Create(auth.NewCreateParams().WithBody(
&models.SessionSession{
Login: "rvasily",
Useragent: "chrome",
},
))
fmt.Println("sessId", sessId, err)
// проверяем сессию
sess, err := sessManager.Check(auth.
NewCheckParams().
WithID(sessId.Payload.ID))
fmt.Println("after create", sess, err)
// удаляем сессию
_, err = sessManager.Delete(auth.NewDeleteParams().WithBody(
&models.SessionSessionID{
ID: sessId.Payload.ID,
},
))
// проверяем еще раз
sess, err = sessManager.Check(auth.
NewCheckParams().
WithID(sessId.Payload.ID))
fmt.Println("after delete", sess, err)
}