automatic password renewal skip logic added
This commit is contained in:
parent
90cbc95ee2
commit
9c5b413d84
|
|
@ -6,6 +6,7 @@ class Constants {
|
|||
static SYSTEM_CHECK_URL = `${Constants.BASE_URL}/index_check.html`
|
||||
static MAIN_PAGE_URL = `${Constants.BASE_URL}/common.do?method=main`
|
||||
static LOGIN_REQUEST_URL = `${Constants.BASE_URL}/userSsl.do?method=login`
|
||||
static PW_CHANGE_NEXT_URL = `${Constants.BASE_URL}/userSsl.do?method=pspnPwChng`
|
||||
static BUY_PAGE_URL = `${Constants.API_URL}/olotto/game/game645.do`
|
||||
static BUY_LOTTO_645_URL = `${Constants.API_URL}/olotto/game/execBuy.do`
|
||||
static BUY_READY_SOCKET_URL = `${Constants.API_URL}/olotto/game/egovUserReadySocket.json`
|
||||
|
|
|
|||
29
lib/lotto.js
29
lib/lotto.js
|
|
@ -62,7 +62,34 @@ class Lotto {
|
|||
if(loginResult instanceof Error)
|
||||
return loginResult
|
||||
|
||||
const $ = Cheerio.load(loginResult.data)
|
||||
let $ = Cheerio.load(loginResult.data)
|
||||
|
||||
/**
|
||||
* 비밀번호 변경 감지
|
||||
*
|
||||
* 비밀번호가 변경이 될 경우 'https://www.dhlottery.co.kr/userSsl.do?method=pwdPlyChngNoti'로 redirect 됨
|
||||
* 비밀번호를 유지할 지 변경할 지 고르는 페이지인데, 여기에 있는 chngTgtId 및 pwdChgToken를 추출해서
|
||||
*
|
||||
* POST 'https://www.dhlottery.co.kr/userSsl.do?method=pspnPwChng'
|
||||
* payload로 chngTgtId, pwdChgToken을 보내면 다음에 하기 처리됨.
|
||||
*
|
||||
* 성공하면 'https://www.dhlottery.co.kr/user.do?method=login&returnUrl=https%3A%2F%2Fwww.dhlottery.co.kr%2Fcommon.do%3Fmethod%3Dmain'
|
||||
* redirect 진행되며, 마지막으로 MAIN_PAGE_URL로 redirect됨
|
||||
*/
|
||||
const targetInput = $('#chngTgtId')
|
||||
if(targetInput.length !== 0) {
|
||||
const chngTgtId = targetInput.val()
|
||||
const pwdChgToken = $('#pwdChgToken').val()
|
||||
|
||||
const pwChgNextData = { chngTgtId, pwdChgToken }
|
||||
const pgChgNextResult = await this.#_request('POST', Constants.PW_CHANGE_NEXT_URL, pwChgNextData)
|
||||
if(pgChgNextResult instanceof Error)
|
||||
return pgChgNextResult
|
||||
|
||||
$ = Cheerio.load(pgChgNextResult.data)
|
||||
}
|
||||
|
||||
|
||||
const btnCommonElements = $('a.btn_common')
|
||||
if(btnCommonElements.length > 0)
|
||||
return new Error('로그인에 실패했습니다. 아이디 또는 비밀번호를 확인해주세요.')
|
||||
|
|
|
|||
Loading…
Reference in New Issue