Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- MySQL
- log4j2
- maven
- JavaScript
- dbeaver
- Git
- IntelliJ
- nginx
- mybatis
- Kubernetes
- docker
- nodejs
- database
- BPMN
- kubectl
- useEffect
- NCP
- LOG4J
- gradle
- VSCode
- gson
- springboot
- tibero
- Spring
- Java
- react
- intellijIDEA
- Windows
- wildfly
- JPA
Archives
- Today
- Total
두 손끝의 창조자
intellij http 전송 기능으로 csrf 토큰을 포함하여 로그인 요청 테스트 하기 본문
IntelliJ에는 http 요청을 테스트 할 수 있는 http 플러그인을 제공한다.
단일 요청을 할 때는 간단하게 할 수 있지만 선행된 요청의 값을 참조하여 다음 요청을 해야할 경우,
예를 들어 csrf 토큰 값을 포함하여 요청해야 하는 경우는 번거로울 수 있다.
하지만 Http 플러그인은 스크립트를 지원해야 간단하게 해결 할 수 있다.
### 1. 로그인 페이지 요청 및 CSRF 토큰 추출
GET http://localhost:9000/login
> {%
const csrfRegex = /<input name="_csrf" type="hidden" value="([^"]+)"/;
const match = response.body.match(csrfRegex);
let csrfToken;
if (match) {
csrfToken = match[1];
client.global.set("csrf_token", csrfToken)
} else {
throw new Error("CSRF 토큰을 찾을 수 없습니다.");
}
%}
### 로그인 시도
# @no-redirect
POST http://localhost:9000/login
accept: text/html
Content-Type: application/x-www-form-urlencoded
username = myuserid &
password = mypassword &
_csrf = {{csrf_token}}
반응형
Comments