3

使用 Facebook 的 Graph API,我正在通过一个表单从我的 iFrame 应用程序上传一张照片:

echo '<form enctype="multipart/form-data" action="'
.$graph_url .' "method="POST">';
echo 'Please choose a photo: ';
echo '<input name="source" type="file"><br/><br/>';
echo 'Say something about this photo: ';
echo '<input name="message" 
  type="text" value=""><br/><br/>';
echo '<input type="submit" value="Upload"/><br/>';
echo '</form>';

$graph_url 在此表单之前定义,如下所示:

$graph_url= "https://graph.facebook.com/me/photos?"
    . "access_token=" .$access_token;

这是可行的,我可以使用我的应用程序将照片上传到用户个人资料,但是,一旦上传照片,我的 iFrame 的内容就会被图表中的“响应”替换:

例子:

  {
   "id": "1001207389476"
  }

我想避免显示这个,而是显示一个成功屏幕,可能还显示一个指向新上传图像的链接。

有谁知道我该怎么做?在过去的三天里,我一直在拔头发,只是想这样做!

以下是我获得代码的教程供参考: https ://developers.facebook.com/blog/post/498/和http://thinkdiff.net/facebook/graph-api-iframe-base-facebook-应用程序开发-php-sdk-3-0/

干杯。

4

3 回答 3

0

将 onsubmit 属性添加到表单标签:您可以使用 JavaScript 完成所有操作,例如显示消息或成功屏幕。

于 2011-09-04T18:27:52.803 回答
0

我能想到的一种解决方案是您可以使用 try catch 块来捕获照片上传代码。如果没有发生异常,并且您确实获得了上传的图片 id。您可以打印“照片上传成功”而不是显示图片ID。

获取图片的链接。您确实需要使用您的图片 ID。您可以尝试 graph.facebook.com/your-pic-id(可能带有一些 access_token)并在其中获取此图片的链接。

查看照片的图形 API:https://developers.facebook.com/docs/reference/api/photo/

希望能帮助到你。

于 2011-09-04T16:55:24.923 回答
0

您是否尝试过在 $graph_url 中定义重定向 uri?不知道 Facebook 期望的参数的确切名称,但我认为它是 redirect_uri。

Edit_:为了更清楚起见,Facebook 将在 Graph URL 中查找该参数,并在您的请求完成后重定向到该 URI。所以你可以定义http://yourdomain.com/yourapp/upload_finished.php。我不是 100% 确定他们是否也会将上传照片的 ID 传递给这个 URI,但应该是这样。

于 2011-09-04T17:45:17.673 回答