こんにちは私は最近アプリケーションを変更しました。最初に基本的な情報を取得します。ユーザーからの許可ですが、ストリーム公開の許可も必要です。したがって、ユーザーがストリーム公開権限を付与されていないかどうかをインデックスページで確認し、次のように権限ダイアログボックスを表示します。
<?php $permission = $facebook->api(array('method' => 'users.hasAppPermission','ext_perm'=>'publish_stream','uid'=> $uid));
if($permission != '1')
{
echo "<script type='text/javascript'>
var dialog = {
method: 'permissions.request',
perms: 'publish_stream'
};
FB.ui(dialog,null);
</script>";
}
?>
このコードはパーミッションボックスを正しく表示しますが、問題は、ユーザーがパーミッションを付与すると、キャンバスページ( http://apps.facebook.com/xyzなど)ではなく、私のキャンバスURL(サーバーページのURL)にリダイレクトされることです。この問題を解決するために、redirect_uriを次のように追加しました
var dialog = {
method: 'permissions.request',
perms: 'publish_stream',
redirect_uri: 'http://apps.facebook.com/xyz'
};
しかし、それでも機能していません。
この問題を解決する方法を教えてください。