에디터 외부 API - 웹 API - 쿠키 (External API, Web API, Cookie handling)
페이지 정보
본문
안녕하세요. 소심비형입니다. 웹 API를 이용해서 웹서버에 있는 쿠키를 가져오거나 추가할 수 있는 액션입니다. 쿠키는 서버에서 클라이언트(사용자)에 상태를 저장하고 추출하여 보다 사용자 친화적인 경험을 제공하는 하나의 방법입니다. 보통은 서버와 클라이언트 간 동기화를 위한 메커니즘으로 사용됩니다.
단순한 예로 쿠키는 한번 방문했던 사이트를 재방문하면 자동으로 아이디와 비밀번호가 입력되도록 할 수 있습니다. 물론, 비밀번호는 암호화하거나 서버에서 받은 토큰으로 대신해야 합니다. 하지만, 클라이언트에 암호를 파일로 저장하는건 위험하기 때문에 이런 방식을 사용하지는 않습니다.
이 내용을 테스트 해보면 서버에 저장되어 있는 내 쿠키 정보를 확인할 수 있게 됩니다. 물론, 중요한 정보는 없거나 암호화되어 있을 겁니다^^; 아무튼, 쿠키에 대한 정보는 인터넷에 찾아보면 아주 다양한 곳에서 설명하고 있으므로 관심 있는 분들은 찾아보면 좋을 거 같네요. 우선 간단한 테스트를 위해 아래와 같이 새로운 스크립트를 추가합니다.
File > 새로 만들기 > 스크립트 (단축키: Ctrl+N)
내용이 좀 복잡해 보일수도 있지만, 아래 그림들을 참고해서 각자 테스트해보시기 바랍니다.
- 우측 하단에 외부API 탭 클릭
-
웹 API 카테고리를 확장연결, 텍스트, 텍스트, 버튼, 쿠키 액션 추가
- 속성 탭 클릭
각각의 속성들을 아래와 같이 설정합니다.
- 연결 클릭
- 아이디에 "쿠키 테스트" 입력
- 웹브라우저는 크롬 선택
- 웹사이트 주소는 "http://demo.guru99.com/test/cookie/selenium_aut.php" 입력
첫번째 텍스트 액션 선택 후 아래와 같이 속성을 설정합니다.
- 텍스트 액션 클릭
- 요소 이름에 "username" 입력
- 요소 형식에 "Name" 선택
- 웹브라우저 이름에 위에 연결에서 설정한 아이디 "쿠키 테스트" 선택
- 텍스트에 "abc123" 입력
두번째 텍스트 액션 선택 후 아래와 같이 속성을 설정합니다.
- 텍스트 액션 클릭
- 요소 이름에 "password" 입력
- 요소 형식에 "Name" 선택
- 웹브라우저 이름에 위에 연결에서 설정한 아이디 "쿠키 테스트" 선택
- 텍스트에 "123xyz" 입력
버튼 액션 선택 후 아래와 같이 속성을 설정합니다.
- 버튼 액션 클릭
- 요소 이름에 "submit" 입력
- 요소 형식에 "Name" 선택
- 웹브라우저 이름에 위에 연결에서 설정한 아이디 "쿠키 테스트" 선택
쿠키 액션 선택 후 아래와 같이 속성을 설정합니다.
- 쿠키 액션 클릭
- 웹브라우저 이름에 위에 연결에서 설정한 아이디 "쿠키 테스트" 선택
- 제어 옵션에 "GetCookie" 선택
모든 설정이 완료되었습니다. 이제 "http://demo.guru99.com/test/cookie/selenium_aut.php" 사이트에 로그인 후 쿠키를 정상적으로 가져오는지 확인해보세요. 아래 영상에서는 쿠키 목록에서 인덱스를 선택하지 않아서 한번 실패했네요^^;
서버에 저장된 쿠키를 잘 가져왔습니다. 속성을 보면 가져온 쿠키의 정보를 확인할 수 있죠? 사실 충분한 권한이 있어야만 쿠키를 제어할 수 있는데요. 일반적으로 관리하는 사이트가 아닌 이상 권한이 없기 때문에 제어하기는 쉽지 않을 겁니다. 아래는 페이스북 정보입니다.
물론, 쿠키를 가져와도 내부 값이 암호화되어 있다면 분석이 불가능할겁니다. 서버를 운영하거나 개발했던 관계자가 아니라면 말이죠~
속성 정보
기본 작업
- 사용 여부: 이 액션의 사용 여부를 설정합니다. False로 설정하면 이 액션은 실행되지 않습니다.
- 설명: 이 액션의 부가적인 설명을 입력합니다.
- 실행 전 지연: 이 액션이 실행되기 전 지연 시간을 입력합니다.
- 실행 후 지연: 이 액션이 실행된 후 지연 시간을 입력합니다.
- 아이디: 스크립트 내에서 유니크한 아이디를 입력합니다.
데이터
- 윈도우 핸들 목록: 웹브라우저를 비롯한 탭, 창들의 핸들 목록을 표시합니다.
- 현재 윈도우 핸들: 현재 웹브라우저에서 선택된 창의 핸들을 표시합니다.
변수
- 가져오기: 글로벌 또는 로컬 변수에 저장되어 있는 값을 이 액션의 속성 값으로 가져옵니다.
- 추가하기: 이 액션의 속성 값을 글로벌 또는 로컬 변수에 저장합니다.
작업
- 도매인: 쿠키를 가져오거나 수정, 추가할 서버의 도매입니다.
- 만료일자: 쿠키의 만료일자를 가져오거나 설정합니다.
- 보안 프로토콜: 쿠키를 가져오거나 설정할 서버 프로토콜입니다. 일반적으로 https를 사용하면 보안 프로토콜을 True로 설정해야 합니다.
- 설정 값: 쿠키 설정값입니다.
- 웹브라우저 이름: 제어하기 위해 연결한 웹브라우저의 고유한 이름입니다.
- 인덱스: 쿠키의 이름을 모를 경우 인덱스를 통해 서버에 저장된 쿠키를 가져올 수 있습니다.
- 자바스크립트 여부: 자바스크립트가 쿠키에 접근할 수 있는지 여부를 나타냅니다.
- 제어 옵션: 쿠키를 가져오거나 설정합니다. 또는 삭제하거나 전체 삭제할 수 있습니다.
- 쿠키 경로: 쿠키가 저장되어 있는 경로입니다.
- 쿠키 이름: 가져오거나 설정할 쿠키의 이름입니다.
개발자에게 후원하기
추천, 구독, 홍보 꼭~ 부탁드립니다.
여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~
감사합니다~
- 이전글외부 API - 웹 API - 웹 크롤러 (External API, Web API, Web Crawler) 20.01.28
- 다음글외부 API - 웹 API - 끊기 (External API, Web API, Disconnection) 20.01.28
댓글목록
등록된 댓글이 없습니다.