0

我是Angular2的新手,我想整合鏈接的登錄功能並獲取當前用戶信息中的Angular2項目。使用linkedin登錄並獲取Angular2的用戶信息

我已經在使用LinkedIn開發者帳戶創建應用程序,並有祕密客戶端ID客戶端和下面的代碼嘗試,但它給了我錯誤

ZoneAwareError {__zone_symbol__error:錯誤:您必須指定一個有效的JavaScript API域作爲此密鑰配置的一部分。在HT ......}

我都嘗試宣告使用雙引號(API_KEY API密鑰的方式:「81zbsc62i53h5x」,沒有它(API_KEY:81zbsc62i53h5x),但同樣的錯誤出現

包括以下指標腳本。 HTML

 <script type="text/javascript" src="http://platform.linkedin.com/in.js"> 
    api_key: 81zbsc62i53h5x 
    authorize: true 
    onLoad: onLinkedInLoad 
    scope: r_fullprofile 
    </script> 

代碼app.component.ts

declare var IN: any; 
export class AppComponent { 
    onLinkedInLoad() { 
    IN.Event.on(IN, "auth", this.onLinkedInAuth); 
    } 
    public onLinkedInAuth() { 
    IN.API.Profile("me") 
     .fields("firstName", "lastName") 
     .result(this.displayProfiles) 
     .error(this.displayProfilesErrors); 
    } 
    public displayProfiles(profiles) { 
    var linkedinmember = profiles.values[0]; 
    console.log(JSON.stringify(linkedinmember)); 
    console.log(linkedinmember.firstName + " " + linkedinmember.lastName); 
    } 
    public displayProfilesErrors(error) { 
    console.log(error.message); 
    console.log(error); 
    } 
} 

app.component.html登錄按鈕,然後單擊

<button (click)="onLinkedInLoad()" class="linkedin-btn">LinkedIn Login</button> 

任何幫助高度讚賞。

+0

查看[LinkedIn API文檔](https://developer.linkedin.com/docs/signin-with-linkedin#)。他們已經列出了包含登錄按鈕的分步指南。 –

+1

第一個問題是你是否需要訪問後端的一些資源。如果是,那麼您需要一個與Linkedin連接的授權服務器,因此需要** OAuth2授權代碼授權**。否則,如果你不需要連接到你的後端,那麼你可以使用** OAuth2隱式授予**。接下來的問題是,LinkedIn支持哪些授權類型?隱式授權可能不可用。所以你可能需要一個授權服務器。您可以實現一個或使用一些已有的商業服務,如Auth0 [LINK](https://auth0.com/docs/connections/social/linkedin)。 – andreim

+0

@MadhuRanjan我已經按照您提供的鏈接中的步驟操作。我還更新了我的問題,以具體說明我收到的錯誤。請查看。 –

回答

1

當您嘗試將linkedin sdk與未註冊的域相集成時,會出現此錯誤。 有你需要做兩件事情:在LinkedIn應用面板 1.增加您的域: Linkedin Panel

2.設置您的主機文件來測試您的應用程序時,您測試域。

相關問題