@@ -563,6 +563,7 @@ function parseCookie(cookie, body, cb) {
563
563
function requestLeetcodeAndSave ( request , leetcodeUrl , user , cb ) {
564
564
request . get ( { url : leetcodeUrl } , function ( e , resp , body ) {
565
565
const redirectUri = resp . request . uri . href ;
566
+ console . log ( redirectUri ) ;
566
567
if ( redirectUri !== config . sys . urls . leetcode_redirect ) {
567
568
return cb ( 'Login failed. Please make sure the credential is correct.' ) ;
568
569
}
@@ -664,8 +665,12 @@ plugin.linkedinLogin = function(user, cb) {
664
665
if ( resp . statusCode !== 200 ) {
665
666
return cb ( 'Get LinkedIn session failed' ) ;
666
667
}
667
- const authenticityToken = body . match ( / i n p u t n a m e = " l o g i n C s r f P a r a m " v a l u e = " ( .* ) " / ) ;
668
- if ( authenticityToken === null ) {
668
+ const csrfToken = body . match ( / i n p u t t y p e = " h i d d e n " n a m e = " c s r f T o k e n " v a l u e = " ( .* ?) " / ) ;
669
+ const loginCsrfToken = body . match ( / i n p u t t y p e = " h i d d e n " n a m e = " l o g i n C s r f P a r a m " v a l u e = " ( .* ?) " / ) ;
670
+ const sIdString = body . match ( / i n p u t t y p e = " h i d d e n " n a m e = " s I d S t r i n g " v a l u e = " ( .* ?) " / ) ;
671
+ const pageInstance = body . match ( / i n p u t t y p e = " h i d d e n " n a m e = " p a g e I n s t a n c e " v a l u e = " ( .* ?) " / ) ;
672
+ console . log ( csrfToken [ 1 ] , loginCsrfToken [ 1 ] , sIdString [ 1 ] , pageInstance [ 1 ] ) ;
673
+ if ( loginCsrfToken === null ) {
669
674
return cb ( 'Get LinkedIn token failed' ) ;
670
675
}
671
676
const options = {
@@ -676,10 +681,22 @@ plugin.linkedinLogin = function(user, cb) {
676
681
} ,
677
682
followAllRedirects : true ,
678
683
form : {
679
- 'session_key' : user . login ,
680
- 'session_password' : user . pass ,
681
- 'loginCsrfParam' : authenticityToken [ 1 ] ,
682
- 'trk' : 'guest_homepage-basic_sign-in-submit'
684
+ 'csrfToken' : csrfToken [ 1 ] ,
685
+ 'session_key' : user . login ,
686
+ 'ac' : 2 ,
687
+ 'sIdString' : sIdString [ 1 ] ,
688
+ 'parentPageKey' : 'd_checkpoint_lg_consumerLogin' ,
689
+ 'pageInstance' : pageInstance [ 1 ] ,
690
+ 'trk' : 'public_profile_nav-header-signin' ,
691
+ 'authUUID' : '' ,
692
+ 'session_redirect' : 'https://www.linkedin.com/feed/' ,
693
+ 'loginCsrfParam' : loginCsrfToken [ 1 ] ,
694
+ 'fp_data' : 'default' ,
695
+ '_d' : 'd' ,
696
+ 'showGoogleOneTapLogin' : true ,
697
+ 'controlId' : 'd_checkpoint_lg_consumerLogin-login_submit_button' ,
698
+ 'session_password' : user . pass ,
699
+ 'loginFlow' : 'REMEMBER_ME_OPTIN'
683
700
} ,
684
701
} ;
685
702
_request ( options , function ( e , resp , body ) {
0 commit comments