2013-01-25 145 views
-2

我是比較新的開發,所以一些技術指南有點難以理解(如如何使用開放圖形「行動」代碼爲捲曲等)。我創建了一個小應用程序,它的行爲與facebook類似(並且充當各種投票......但還沒有到那個部分,當它被回答時可能將它作爲單獨的問題發佈)。我的問題是與應用程序訪問令牌。我不知道如何將它傳遞給html/php頁面(使用頁面標籤)和動作。我可以爲自己獲取應用訪問令牌,並使用手動網址字符串測試用戶,在此處使用必要信息替換app_id和app_secret,並獲得對應用的訪問權限。然而,對於其他用戶,我總是得到這個錯誤應用程序訪問令牌.....如何正確使用

{"error":{"message":"(#200) Requires extended permission: publish_actions","type":"OAuthException","code":200}} 

下面是動作

FB.init({ 
    appId  : '446224932099458', // App ID from the App Dashboard 
    status  : true, // check the login status upon init? 
    cookie  : true, // set sessions cookies to allow your server to access the session? 
    xfbml  : true // parse XFBML tags on this page? 
}); 

FB.getLoginStatus(function (response) { 
    if (response.status === 'connected') { 
     // connected 
     testAPI(); 
    } else if (response.status === 'not_authorized') { 
     // not_authorized 
     login(); 
    } else { 
     // not_logged_in 
     login(); 
    } 

function login() { 
    FB.login(function (response) { 
     if (response.authResponse) { 
      // connected 
     } else { 
      // cancelled 
     } 
    }, {scope: 'publish_actions,publish_stream'}); 
} 

function testAPI() { 
    console.log('Welcome! Fetching your information.... '); 
    FB.api('/me', function (response) { 
     console.log('Good to see you, ' + response.name + '.'); 
    }); 
} 

注意FB.getLoginStatus嵌套在FB.init的代碼。 FB.login不在FB.init中。

我已經在代碼中放入了FB.init,FB.getLoginStatus和FB.login。用戶被要求登錄到應用程序,並允許它的權限,但問題仍然存在。

這是鏈接到應用程序 http://www.facebook.com/TechOnePhilippines/app_446224932099458

任何幫助,將SO不勝感激!提前致謝。

+0

你請求在你的''scope' publish_actions'?請參閱「權限」標題以獲取更多信息:https://developers.facebook.com/docs/howtos/login/client-side-without-js-sdk/ – cpilko

+0

請發佈您的登錄代碼,因爲此問題與此相關部分? –

+0

嗨Anvesh,我編輯了上面的帖子,包括FB.login。 嗨cpilko,抱歉,但我不知道如何使用「步驟2」爲所有用戶(真正的新手在這裏)。 – Vanman

回答

0

你可以發佈你的登錄代碼嗎? 很難看出問題與這些代碼有關。 錯誤消息可能與發佈權限高度相關。

FB.login(function(response) { 
    if (response.authResponse) { 
     //your code 
    }else { 
     //error code 
    } 
},{scope:'email,user_photos,publish_stream'}); 

嘗試設置範圍時的FB.login調用..

+0

嗨,謝謝你的幫助。我編輯原始帖子,以反映你需要的代碼,以及應用程序的鏈接 – Vanman

+0

我想我想通了。我主要把FB.login和FB.getLoginStatus放在入口頁面上。主頁沒有他們。當我把它放在主頁上時,現在一切都很順利。一些用戶雖然仍然得到「錯誤2500」,但可能是因爲他們以前是測試人員(並且這些更改尚未傳播)。 – Vanman

相關問題