2016-03-29 15 views
0

Ich habe die LinkedIn App erstellt und die Client-ID und client_secret abgerufen.Wie implementiert man OAuth.io mit Ionic Framework für LinkedIn?

Jetzt innerhalb der integrierten API von OAuth.io eine API erstellt und die Schlüssel und Berechtigungen hinzugefügt.

Ich möchte dieses Projekt mit Ionic Framework ausführen. Was sollte getan werden, um es zu erreichen?

P.S: Ich bin neu in Ionic Framework und OAuth.io. Also, macht mir bitte nichts aus meinem Stil, die Frage zu stellen.

ganze index.html:

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width"> 
    <title></title> 

    <link href="lib/ionic/css/ionic.css" rel="stylesheet"> 
    <link href="css/style.css" rel="stylesheet"> 

    <script src="lib/ionic/js/ionic.bundle.js"></script> 

    <script src="js/ng-cordova.min.js"></script> 
    <script src="js/ng-cordova-oauth.min.js"></script> 
    <script src="cordova.js"></script> 

    <script src="js/app.js"></script> 
</head> 

<body ng-controller="MainCtrl"> 
<button class="button" ng-click="linkedInLogin()">Login via LinkedIn</button> 
</body> 
</html> 

ganze app.js:

angular.module('starter', ['ionic', 'ngCordova', 'ngCordovaOauth']) 

.run(function($ionicPlatform) { 
$ionicPlatform.ready(function() { 
if(window.cordova && window.cordova.plugins.Keyboard) { 
    cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true); 
    cordova.plugins.Keyboard.disableScroll(true); 
} 
if(window.StatusBar) { 
    StatusBar.styleDefault(); 
} 
}); 
}) 
.controller("MainCtrl", function($scope, $cordovaOauth) { 
document.addEventListener("deviceready", onDeviceReady); 
    function onDeviceReady(event) { 
     // on button click code 
     $scope.linkedInLogin = function(){ 
     OAuth.initialize('07IxSBnzVoGGQL2MpvXjSYakagE') 
     OAuth.popup('linkedin').done(function(result) { 
      // Here you will get access token 
      console.log(result) 
       result.me().done(function(data) { 
        // Here you will get basic profile details of user 
        console.log(data); 
       }) 
     }); 
     }; 
    } 
}); 

Antwort

1

ich was lesen Sie die ngCordova Plugins.

+0

Ich habe OAuth.io verwenden –

4

Bitte gehen Sie durch die einzelnen Schritte und unter Code:
1) erstellen Sie ein Projekt vom Terminal als ionische Start linkedinlogin blank
2) cd linkedinlogin Projekt
3) Fügen Sie die gewünschte Plattform in Terminal als ionische Add-Plattform ** **
4) in die ng-cordova.min.js Datei über der cordova.ja Datei in unserem Projekt
5) installieren ng-cordova-oauth als bower installiert ng-cordova-oauth ES
6) Dann Include ng-cordova-oauth.min.js-Datei in index.html
7) Inject 'ngCordova' und 'ngCordovaOauth' als Abhängigkeit in app.js Datei
8) index.html eine Schaltfläche als Login über linkedin In app.js
9) erstellen erstellen Regler mit folgenden Code
10) Bitte aktualisieren Sie Ihre cordova Plattform, wenn die oben Plugin nicht

funktioniert
$cordovaOauth.linkedin(clientId, clientSecret, ['r_basicprofile', 'r_emailaddress']).then(function(success){ 
     //Here you will get the access_token 

     console.log(JSON.stringify(success)); 

     $http({method:"GET", url:"https://api.linkedin.com/v1/people/~:(email-address,first-name,last-name,picture-url)?format=json&oauth2_access_token="+success.access_token}).success(function(response){ 

     // In response we will get firstname, lastname, emailaddress and picture url 
     // Note: If image is not uploaded in linkedIn account, we can't get image url 

     console.log(response); 
     }, function(error){ 
     console.log(error); 
     }) 
    }, function(error){ 
     console.log(error); 
    }) 
+0

Ich weiß, diese Methode. aber ich muss OAuth.io verwenden –

+0

Dies sollte als die richtige Antwort markiert sein! Verwenden Sie ngCordova – Jason

0

mit oauth.io i Login über linkedin umgesetzt haben:

Bitte folgen Sie den Schritten:
1. Um eine App in oauth.io erstellen und den öffentlichen Schlüssel erhalten.
2. Klicken Sie in der linken Seitenleiste auf das Menü Integrierte APIs.
3. Klicken Sie nun auf die grüne Schaltfläche ADD APIs in der rechten oberen Ecke.
4. Jetzt suchen und wählen Sie LinkedIn.
5. Fügen Sie nun die Client-ID und den Client-Schlüssel in Schlüssel und Berechtigungsbereich hinzu.
6. Verwendung unter Befehl Plugin Projekt hinzuzufügen:

cordova plugin add https://github.com/oauth-io/oauth-phonegap 

7. Für Code unten Controller-Code zu überprüfen.

document.addEventListener("deviceready", onDeviceReady); 
    function onDeviceReady(event) { 
     // on button click code 
     $scope.linkedInLogin = function(){ 
     OAuth.initialize('your public key') 
     OAuth.popup('linkedin').done(function(result) { 
      // Here you will get access token 
      console.log(result) 
       result.me().done(function(data) { 
        // Here you will get basic profile details of user 
        console.log(data); 
       }) 
     }); 
     }; 
    } 

Hoffe, dass es Ihnen helfen können ..

+0

versuchte Ihren Code, aber nichts passierte, als ich auf die Login-Schaltfläche geklickt ... –

+0

können Sie bitte Ihren Code posten? –

+0

jetzt hochgeladen ... –