2016-05-24 2 views
0

ich habe applikation in eckig entwickelt und bin mit facebook login custom fertig, ohne den Oath0 service von dritten zu verwenden. Ich bin fertig mit login twitter mit Oath-Service, aber keine Lösung ohne Oath0 Third Party Service gefunden. Also, gibt es eine Idee für die Linkedin und Twitter Login in eckigen ohne Oath0 Third Party Service zu verwenden?Angularjs login twitter und linkedin custom ohne owd0 service von dritten partnern

+0

können Sie mir sagen, was sind Schritte für Twitter Login? Ich versuchte mit oauth, aber es funktioniert nicht.ich bin nicht bekommen, wo ich falsch mache. – roshini

Antwort

1

Hier ist ein Beispiel für Twitter und Linkedin Login. In der App-Modulkonfiguration stellen Sie sicher, Sie haben ngsanitize

var app = angular.module("app", ['ngRoute', 'ngMessages','ngCookies','ngSanitize']); 

in Ihrem Controller-Datei

in Login-Controller

app.controller("loginsController", function ($location, $scope, $http, $rootScope, constant,$q,twitterService) { 
twitterService.initialize(); 
$scope.LinkedfoundMe = function (me) { 
    $scope.me = me; 
    $scope.$digest(); 
    $scope.LoginSocialUsers($scope.me); 
}; 
$scope.connectTWButton = function() { 
    twitterService.connectTwitter().then(function() { 
     if (twitterService.isReady()) { 
      //if the authorization is successful, hide the connect button and display the tweets 
       $scope.refreshTimeline(); 

      $scope.connectedTwitter = true; 
     } else { 
     } 
    }); 
} 
$scope.refreshTimeline = function() { 
    twitterService.getTweetUser().then(function(data) { 
     if(data[0].user.id != null || data[0].user.id != undefined){ 
      var TwData = {}; 
      TwData.firstName =data[0].user.name; 
      TwData.lastName =""; 
      TwData.emailAddress =""; 
      TwData.id =data[0].user.id; 
      $scope.LoginSocialUsers(TwData); 
     } 
    },function(){ 
     $scope.rateLimitError = true; 
    }); 
}}); 

Jetzt habe ich umgesetzt linkedin Login mit jQuery und geben Daten an Winkelfunktion hinzugefügt . Unten ist Code für linkedin Login mit js sdk.

Fügen Sie JavaScript-Datei zu Ihrem HTML.

<script type="text/javascript" src="http://platform.linkedin.com/in.js"> 
api_key: YOUR_APP_KEY 
onLoad: displayLinkedInLogin 
authorize: false 
</script> 

in Ihrem Controller-Datei müssen

function linkedAuthLink() { 
IN.User.authorize(function() { 
}); 
} 
function displayLinkedInLogin() { 
IN.Event.on(IN, "auth", onLinkedInAuth); 
} 
function onLinkedInAuth() { 
IN.API.Profile("me") 
     .fields(["firstName", "lastName", "emailAddress",  "pictureUrl", "id", "headline", "location", "summary", "positions", "twitter-accounts"]) 
     .result(displayProfiles); 
} 
function displayProfiles(profiles, $scope) { 
member = profiles.values[0]; 
angular.element($("#logincontroller")).scope().LinkedfoundMe(member); 
} 

für linkedin Sie Controller von Ihrem html aufrufen ng-Controller ist dies der einzige Weg, es funktioniert. Sie müssen oauth.js Datei von unten Link oauth.js file for twitter auth

+0

Danke Kevin .. – Nitin

0

Zumindest für Twitter kann ich Ihnen sagen, dass Sie wahrscheinlich ohne OAuth nicht authentifizieren können.

Twitter Benutzername/Passwort Authentifizierung ist stark eingeschränkt für bestimmte Geschäftsfälle und Unternehmen, die bereit sind, dafür zu bezahlen. Die einzige App, von der ich weiß, dass sie Zugriff auf diese Funktion hat, ist Instagram.

Sie können eine Anfrage für dieses Feature stellen, aber für eine enge Zusammenarbeit mit dem Team, wenn Sie kein großes Unternehmen haben, das Ihre Anfrage unterstützt, hat es eine 99% ige Chance, abgelehnt zu werden.

Um meinen Punkt zu verbessern, möchte ich sagen, dass ich der Entwickler einer Third-Party-Bibliothek für Twitter bin und bei Treffen mit ihren Mitarbeitern zu diesem speziellen Thema sagten sie mir, dass ich keine Benutzername/Passwort-Authentifizierung hinzufügen sollte Die Bibliothek als die Anzahl der Kunden mit solchen Privilegien sind sehr eingeschränkt.