我有一個Facebook應用程序,是一個粉絲頁面內的選項卡。Facebook應用程序請求
我已經使用已簽名的請求來查看用戶是否喜歡該頁面並基於該頁面顯示內容。
我還設法在提示用戶登錄並授予對應用程序的訪問權限後使用獲取Facebook用戶標識。
我無法做到的是獲得'apprequests'功能。我已經試了幾種方法:
僅供參考 - 我使用這個版本的jQuery:https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<form id="form1" runat="server">
<script type="text/javascript">
window.fbAsyncInit = function() {
FB.init({ appId: 'myappid', xfbml: true, cookie: true, oauth: true });
};
function inviteFriends() {
FB.ui({
method: 'apprequests',
message: 'Enter this cool competition http://www.facebook.com/pages/My-Test-Fan-Page/204123762998981?sk=app_308637695832192',
redirect_uri: 'http://www.facebook.com/pages/My-Test-Fan-Page/204123762998981?sk=app_308637695832192',
display: 'iframe'
},
function (response) {
console.log(response);
}
);
}
....
我這樣做的時候,有2個問題(我認爲它們可能是相關的) 1.請求未發送給選定的用戶 2.響應的功能未被調用。 當我調用FB.ui方法時,我可以選擇用戶,但是當我這樣做時,對話框會顯示一個加載屏幕並關閉。
我發現奇怪的一件事是,當我沒有包含'redirect_uri'參數(從我所看到的不應該是必要的),我得到一個錯誤,說應用程序沒有擁有回調url 。
我自己也嘗試做這種方式
var message = 'Enter this cool competition';
var requestUrl = 'http://www.facebook.com/dialog/apprequests?app_id=308637695832192&redirect_uri=http://localhost:51934/Default.aspx&message=' + message;
window.top.location.href = requestUrl;
這也似乎工作,我可以選擇用戶和它似乎工作 - 我得到我的[0],來添加用戶[1]等查詢字符串參數。
有什麼我做的這是錯的,可能是造成這種情況嗎?當我要求用戶授權應用程序時,我只是要求標準訪問,據我所知,這是所有應該需要的。如果在頁面ta內可以做些什麼有一些限制,我也會遊蕩?
任何幫助將不勝感激。
#1是我的問題,並修復它!謝謝! – sevenseacat