dqq22391 2011-02-25 01:32
浏览 46
已采纳

带有'&scope = publish_steam'的Facebook API OAuth Excpetion#200

Trying to post a status update using facebook php sdk. Code posted below. As I understand it, I need ask for extended persmission, which I do in the login URL with '&scope=publish_stream', but this still isn't working.

The resultant login URL looks like: https://www.facebook.com/login.php?api_key=174954539217971&cancel_url=http%3A%2F%2Fexample.com%2facebook.post.php&display=page&fbconnect=1&next=http%3A%2F%2Fexample.com%2Ffacebook.post.php&return_session=1&session_version=3&v=1.0&scope=publish_stream

So you can see it is being set. While this is essentially the same question as: Facebook OAuthException: "user hasn't authorized the application to perform this action"

The suggested solution in that thread is not working here.

<?php

echo "Posting to facebook..<br/>";

require './fb_src/facebook.php';

$facebook = new Facebook(array(
  'appId'  => 'appId',
  'secret' => 'secret',
  'cookie' => true,
));

$session = $facebook->getSession();
$me = null;
if ($session) {
  try {
    $uid = $facebook->getUser();
    $me = $facebook->api('/me');
  } catch (FacebookApiException $e) {
    header('Location: ' . $facebook->getLoginUrl(array('scope' => 'publish_stream')));
    error_log($e);
  }
}
else {
  header('Location: ' . $facebook->getLoginUrl(array('scope' => 'publish_stream')));
}

print_r($me);

try {
  $feed = $facebook->api('/me/feed', 'post', array('message' => 'Hello world!', 'cb' => ''));
} catch (FacebookApiException $e) {
  print($e);
}
print_r($feed);
?>
  • 写回答

1条回答 默认 最新

  • duan0065626385 2011-02-25 02:03
    关注

    parameter is 'req_perms' not 'scope'. So hard to find good documentation...

    Works fine now.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?