-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathusers.http
127 lines (103 loc) · 3.46 KB
/
users.http
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
#-----------------------
# users.http
# jwt 토큰 발급 > access_token 전역변수 설정
#-----------------------
### 1. 회원가입
POST /v1/users
Content-Type: application/json
Host: localhost:18080
{
"name" : "홍길동",
"email" : "[email protected]",
"loginId" : "admin22",
"password" : "test1234",
"role": "ROLE_ADMIN",
"phone" : "01012345678",
"userStatus" : "ACTIVE"
}
### 2. 로그인 (JWT 토큰 발급)
POST /security/jwtlogin
Host: localhost:18080
Content-Type: application/json
{
"loginId" : "admin22",
"password": "test1234"
}
> {%
client.test("Validate", function() { // Validate라는 이름의 테스트를 수행
client.assert(response.status === 200, "Response status is not 200"); // 응답값이 200이면 통과
client.assert(response.contentType.mimeType === "application/json", "Expected 'application/json'"); // 응답값이 application/json이면 통과
client.assert(response.body.accessToken.trim().length > 0); // 토큰 길이가 0보다 크면 통과
});
client.log(response.body.accessToken); // 토큰 값 로깅, body에는 응답받은 json이 객체 형식으로 저장된다. 즉 { accessToken:"value" }가 응답이라면, 여기선 value라 로깅된다.
client.global.set("access_token",response.body.accessToken) // 토큰 값을 global 변수에 set
%}
### 2. 로그인 (JWT 토큰 발급) - FEIGN
POST /v1/users/login
Host: localhost:8080
x-user-id: test
x-user-role: ROLE_ADMIN
x-dept-id: DEPT_SUPPLY
x-subject-id: SUB91432
x-service-id: user-service
x-menu-id: MEN0010
x-view-id: VEW0010
x-tr-id: 8773286876876876
Content-Type: application/json
{
"loginId" : "admin22",
"password": "test1234"
}
> {%
client.test("Validate", function() { // Validate라는 이름의 테스트를 수행
client.assert(response.status === 200, "Response status is not 200"); // 응답값이 200이면 통과
client.assert(response.contentType.mimeType === "application/json", "Expected 'application/json'"); // 응답값이 application/json이면 통과
client.assert(response.body.accessToken.trim().length > 0); // 토큰 길이가 0보다 크면 통과
});
client.log(response.body.data.accessToken); // 토큰 값 로깅, body에는 응답받은 json이 객체 형식으로 저장된다. 즉 { accessToken:"value" }가 응답이라면, 여기선 value라 로깅된다.
client.global.set("access_token",response.body.data.accessToken) // 토큰 값을 global 변수에 set
%}
### 3. 사용자 조회 (회원조회-detail)
# /v1/users/{loginId}
GET /v1/users/admin
Host: localhost:8080
Authorization: Bearer {{access_token}}
x-user-id: test
x-user-role: ROLE_ADMIN
x-dept-id: DEPT_SUPPLY
x-subject-id: SUB91432
x-service-id: user-service
x-menu-id: MEN0010
x-view-id: VEW0010
x-tr-id: 8773286876876876
Content-Type: application/json
### 4. 사용자 수정 (회원수정)
# PUT /v1/users/{loginId}
PUT /v1/users/3
Host: localhost:8080
Authorization: Bearer {{access_token}}
Content-Type: application/json
{
"name" : "홍길동",
"email" : "[email protected]",
"password" : "test1234",
"userStatus" : "ACTIVE"
}
### 5. 사용자 삭제 (회원탈퇴)
# DELETE /v1/users/{loginId}
DELETE /v1/users/1
Host: localhost:8080
Authorization: Bearer {{access_token}}
# ------------------------------------- 미사용 -------------------------
### 로그인
POST /v1/users/login
Host: localhost:8080
Content-Type: application/json
{
"loginId" : "test",
"password" : "test1234"
}
### 로그아웃
GET /v1/users/logout
Host: localhost:8080
Authorization: Bearer {{access_token}}