Jon*_*ark 1 facebook ruby-on-rails
我正在使用Rails 3和Facebook Javascript SDK,当我登录cookie时创建.我希望能够使用Rails从此cookie中提取数据.
我有一个PHP代码,但我想使用Rails代码.下面用PHP编写的代码在Rails中是什么样的?
function get_facebook_cookie($app_id, $application_secret) {
$args = array();
parse_str(trim($_COOKIE['fbs_' . $app_id], '\\"'), $args);
ksort($args);
$payload = '';
foreach ($args as $key => $value) {
if ($key != 'sig') {
$payload .= $key . '=' . $value;
}
}
if (md5($payload . $application_secret) != $args['sig']) {
return null;
}
return $args;
}
$cookie = get_facebook_cookie(FACEBOOK_APP_ID, FACEBOOK_SECRET);
Run Code Online (Sandbox Code Playgroud)
小智 5
而不是重新发明轮子,使用支持Facebook的API的Ruby宝石之一.例如,使用Koala gem 的等价物看起来像:
require 'rubygems'
require 'koala'
FB_APP_ID = "<your-app-id">
FB_APP_SECRET = "<your-app-secret>"
@oauth = Koala::Facebook::OAuth.new(FB_APP_ID, FB_APP_SECRET)
info = @oauth.get_user_info_from_cookies(cookies) # parses and returns the entire hash
puts info.inspect
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
850 次 |
| 最近记录: |