0

Facebookアプリのスコアを作成したいのですが、そのためにapp_access_tokenが必要です。一部の投稿によると、app_access_tokenを取得する唯一の方法は、次のようにPHPを使用することです。

    <?php

$APPLICATION_ID = YOUR_APP_ID;
$APPLICATION_SECRET = YOUR_APP_SECRET;

$token_url =    "https://graph.facebook.com/oauth/access_token?" .
            "client_id=" . $APPLICATION_ID .
            "&client_secret=" . $APPLICATION_SECRET .
            "&grant_type=client_credentials";
$app_token = file_get_contents($token_url);

?>

このPHPスクリプトを介して取得するトークンは、にあるいわゆる「アプリトークン」とは異なりますか?

https://developers.facebook.com/tools/access_token/

(このように見えAPPLICATION_ID|lvATVyhp1m.............wます:)そしてあなたが呼び出すことによって得られるのと実際には同じです

https://graph.facebook.com/oauth/access_token?client_id=CLIENT_ID&client_secret=CLIENT_SECRET&grant_type=client_credentials直接。

では、なぜこの呼び出しをPHP経由で行う必要があるのでしょうか。

4

1 に答える 1

1

さまざまな方法でトークンを取得できます

<a href='https://www.facebook.com/dialog/oauth?client_id=2926561407xxxxx&redirect_uri=http://localhost:8080/fb/getCode.html&rcount=1&scope=email,read_stream'>Login</a>

次の方法で取得できる URL を介してトークンを返します。

function getURLParameters(access_token) 
{
    var sURL = window.document.URL.toString();
    if (sURL.indexOf("?") > 0)
    {
    var arrParams = sURL.split("?"); 
    var arrURLParams = arrParams[1].split("&"); 
    var arrParamNames = new Array(arrURLParams.length);
        var arrParamValues = new Array(arrURLParams.length);     
        var i = 0;

        for (i=0;i<arrURLParams.length;i++)
        {
            var sParam =  arrURLParams[i].split("=");
            arrParamNames[i] = sParam[0];

            if (sParam[1] != "")
              arrParamValues[i] = unescape(sParam[1]);
            else
              arrParamValues[i] = "No Value";
        }

        for (i=0;i<arrURLParams.length;i++)
        {
          if(arrParamNames[i] == "code")
          {
            code = arrParamValues[i];
            return arrParamValues[i];
          }
        }

        return "No Parameters Found";
    }
}
getURLParameters();
于 2012-03-01T09:13:40.033 に答える