Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

IN.User.Authorize callback never fired

Since today, our application that uses the linkedin javascript SDK to authenticate users stopped working. ​ We realized that the call to https://platform.linkedin.com/in.js now redirects to https://platform.linkedin.com/xdoor/scripts/in.js.

​ Consequently, calls to IN.User.Authorize(callbackFunction) successfully opens the authentication dialog window but the callback is never fired anymore. ​

Also, in another part of our application we are using the IN.UI.Authorize.place().onWindowRemove.subscribe(callbackFunction) to track dialog closes. This feature has also stopped wording and now opens a new window with the url invalid:// and the console throws this error: ​

jSecure Error: URL should be absolute with allowed schemas, relative, a hash fragment or query string. TODO?client_id=XXXX&type=user-agent in.js:7
​
jSecure Error: URL should be absolute with allowed schemas, relative, a hash fragment or query string. invalid://?xdOrigin=https%3A%2F%2FXXX-XXX&xdChannel=XXXX&xd_origin_host=https%3A%2F%2FXXXX.XXXX in.js:7 
​
jSecure Error: URL should be absolute with allowed schemas, relative, a hash fragment or query string. TODO?client_id=XXXX&type=user-agent

​ ​ Do you have an idea on why this stopped working ?

EDIT: Bug reappeared as of 2019 01 28.

like image 399
klacointe Avatar asked Nov 15 '18 16:11

klacointe


1 Answers

Try replacing window.IN.User.authorize with window.IN.user.authorize

window.IN.user.authorize is returning a promise and success callback is executed post login success. Its weird but working if we replace User with user

window.IN.user.authorize().then(function(data){
                    console.log("Logged in successfully .");
                    window.IN.API.Raw("/people/~:(id,first-name,last-name,formatted-name,headline,location,industry,current-share,num-connections,num-connections-capped,summary,specialties,positions,picture-url,site-standard-profile-request,api-standard-profile-request,public-profile-url,email-address)").method("GET").body().result(function (oData) {
                        that.props.dispatch(userCreation(linkedInProfileFormat(oData)));
                    });
                },function(error){
                    alert("Linkedin failed because of harshita !");
                });   
like image 68
NavyCody Avatar answered Oct 21 '22 03:10

NavyCody