Platform
Inscreva-se com o LinkedIn
10 min
tutorial de login com linkedin introdução o login com linkedin permite que os usuários façam login em aplicativos usando suas contas do linkedin pré requisitos para completar este tutorial, você precisará um aplicativo criado no back4app veja o tutorial de criar novo app para aprender como criar um aplicativo no back4app configurar um subdomínio para seu aplicativo back4app veja ativando seu hospedagem web e consulta ao vivo para aprender como criar um subdomínio no back4app uma conta de desenvolvedor do linkedin 1 criar um novo app no back4app primeiro de tudo, é necessário garantir que você tenha um aplicativo existente criado no back4app no entanto, se você é um novo usuário, pode verificar este tutorial https //www back4app com/docs/get started/new parse app para aprender como criar um 2 crie um novo aplicativo linkedin faça login na sua conta de desenvolvedor linkedin https //www linkedin com/developers clique em criar aplicativo criar aplicativo e escolha id do cliente oauth id do cliente oauth escolha um nome para o aplicativo e preencha os campos obrigatórios, como e mail comercial e mail comercial e logotipo do aplicativo logotipo do aplicativo concorde com os termos e clique em criar aplicativo criar aplicativo no seu aplicativo recém criado, clique em verificar verificar para verificar a propriedade do aplicativo você deve ser o proprietário ou administrador da página do linkedin para verificar na página de verificação, clique em gerar url gerar url visite o url de verificação url de verificação gerado usando a conta de administrador ou proprietário da página da empresa no linkedin clique em aprovar verificação aprovar verificação certifique se de que seu aplicativo está verificado no seu app, vá para a auth auth aba, preencha o redirect urls redirect urls campo e clique em update update 3 recupere seu código visite a seguinte url, alterando os valores para client id client id , redirect url redirect url , e a random string a random string pelos que você criou a string aleatória é para evitar ataques csrf faça login com sua conta do linkedin e o site redirecionado terá seu código na url copie apenas a parte do código da url e execute o seguinte comando curl substituindo os valores seu código seu código , seu client id seu client id , seu client secret seu client secret , e sua redirect uri sua redirect uri pelos valores da sua aplicação 1 curl x post \\ 2 https //www linkedin com/oauth/v2/accesstoken \\ 3 h 'cache control no cache' \\ 4 h 'content type application/x www form urlencoded' \\ 5 d 'client id=your client id\&client secret=your client secret\&redirect uri=your redirect uri\&code=your code\&grant type=authorization code' execute o e você deve recuperar seu token de acesso lembre se o código pode ser usado apenas uma vez se você receber um erro ou não usar seu token, deve re gerar seu código para poder executá lo novamente 4 inicie o desenvolvimento agora que o login com o linkedin está configurado, você pode iniciar o processo de desenvolvimento o formato para authdata é 1 { 2 "linkedin" { 3 "id" "user's linkedin id (string)", 4 "access token" "an authorized linkedin access token for the user", 5 "is mobile sdk" true|false // set to true if you acquired the token through linkedin mobile sdk 6 } 7 } aqui está o método para o sdk ios 1 pfuser loginwithauthtype(inbackground "linkedin", authdata \["access token"\ tokenstring, "id" user, "is mobile sdk" true]) continuewith { task > any? in 2 3 } e aqui para o sdk android 1 map\<string, string, bool> authdata = new hashmap\<string, string, bool>(); 2 authdata put("access token", tokenstring); 3 authdata put("id", user); 4 authdata put("is mobile sdk", true); 5 task\<parseuser> t = parseuser loginwithinbackground("google", authdata); 6 t continuewith(new continuation\<parseuser, void>() { 7 public void then(task task) throws exception { 8 if (task iscancelled()) { 9 log w(tag, "task cancelled"); 10 } else if (task isfaulted()) { 11 log w(tag, "save fail" + task geterror()); 12 utilities showtoast(getresources() getstring(r string errorlogin) + task geterror(), mainactivity this); 13 } else { 14 // the object was saved successfully 15 parseuser user = (parseuser)task getresult(); 16 log w(tag, "success " + user getobjectid() + " " + user getusername() + " " + user getemail() + " " + user getsessiontoken()); 17 } 18 } 19 }