我试图在我的某个页面上创建一个按钮,允许用户邀请他们的朋友使用我的网络应用程序。当我点击我为邀请按钮创建的链接时,没有任何反应。我错过了什么?我对编码很陌生,所以我对下一步做什么感到有点迷失。
Show.html.erb文件:
<% if current_user %>
<div id="friends">
<p> <%= link_to "Invite Your Facebook Friends", '#', :id => 'invite_fb_friends' %></p>
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script>
$(function(){
$("a#invite_fb_friends").click(function(){
FB.init({
appId:'My app ID',
cookie:false,
status:true
});
FB.ui({ method: 'apprequests', message: '<%= @user %> Invited you to collaborate on a story.'} requestCallback;);
};)
});
</script>
</div>
<% end %>
我使用这些宝石进行身份验证
gem 'devise'
gem 'omniauth'
gem 'omniauth-facebook'
这是我的omniauth回调控制器
def facebook
@user = User.find_for_facebook_oauth(request.env["omniauth.auth"], current_user)
if @user.persisted?
sign_in_and_redirect @user, :event => :authentication #this will throw if @user is not activated
set_flash_message(:notice, :success, :kind => "Facebook") if is_navigational_format?
else
session["devise.facebook_data"] = request.env["omniauth.auth"]
redirect_to new_user_registration_url
end
end
end
答案 0 :(得分:0)
自发布此问题以来,我了解到您只能启用该功能,以允许用户邀请他们的朋友加入您的应用(如果它在画布上存在)。 https://developers.facebook.com/docs/games/canvas
自api发布的v2.0以来,允许用户发送FB邀请的最佳方式是通过发送对话框。 https://developers.facebook.com/docs/sharing/reference/send-dialog
如果有人找到更好的方法,请告诉我。