2012-07-29 85 views
0

我有个人博客,我想用我的Linkedin数据填充“关于我”部分。以编程方式使用javascript api登录Linkedin

以我自己的凭证以编程方式登录Linkedin并提供数据的最佳方式是什么?

我不希望访问者必须登录linkedin才能看到“我的”LinkedIn数据。

有关最佳方法的任何想法?

这是我的代码的开始,我刚刚开始并了解流程。

(function($, window) { 
"use strict"; 

var Linkedin = { 
    Config: { 
     API_KEY: "API_KEY", 
     SECRET_KEY: "SECRET_KEY", 
     URL: "http://www.hanger-designs.co.uk:8888/wemustcreate/", 
     END_POINT: "http://platform.linkedin.com/in.js" 
    }, 
    initalise: function() { 
     this.insertScript(this.returnedFunc, this.Config.END_POINT); 
    }, 
    insertScript: function(callback, endPoint) { 
     var code = "api_key:" + this.Config.API_KEY + "\n" + 
        "onLoad:" + callback + "\n" + 
        "authorize: true" 
     var scriptElement = document.createElement('script'); 
     scriptElement.text = code; 
     scriptElement.type = 'text/javascript'; 
     scriptElement.src = this.Config.END_POINT; 

     document.body.appendChild(scriptElement); 
    }, 
    returnedFunc: function() { 
     console.log('callback', arguments); 
    } 

} 

Linkedin.initalise(); 

})(jQuery, window); 
+1

没有代码,没有帮助。 – 2012-07-29 10:35:18

回答

1

要做到这一点,您需要使用OAuth进行授权。你的博客可以做这个授权(PHP/Perl/whatnot),但客户端不能(JavaScript)。

造成这种情况的原因:

  • 要共享的密钥,它可以允许任何人访问
  • 你需要存储状态某处(标记)。你不应该把它存储在客户端上。您需要一台服务器才能保存令牌。
+0

感谢Jonas,那么在我的回调中,我将开始OAuth之旅?我可以发布到一些PHP,并从那里处理它我想?我可能会坚持它在一个cookie。 – Owzzz 2012-07-29 10:48:21

+0

你可以,但为什么不把所有东西都移到PHP? :)如果你有一个数据库,你可以缓存LinkedIn信息。我相信linkedin有一些API调用的最大限制。 https://wordpress.org/extend/plugins/lips/这个插件可能会做一些你想做的事情。 – 2012-07-29 10:52:05

+0

是的,我想我只是希望我能处理大部分/全部的客户端。但没关系,我会阅读OAuth流程。谢谢 – Owzzz 2012-07-29 11:04:33