Php 执行图形API Facebook[发送应用程序请求]

Php 执行图形API Facebook[发送应用程序请求],php,facebook,Php,Facebook,我想向应用程序Facebook的用户发送应用程序请求 https://graph.facebook.com/myid_facebook/apprequests?message=test&data=INSERT_STRING_DATA&access_token=XXXXXXX&method=post 我试过使用curl,但它不起作用 这是我的源代码 $app_id = 'XXXXXXXXXX'; $app_secret = 'XXXXXXXXXXXXXXX'; $apprequest_url =

我想向应用程序Facebook的用户发送应用程序请求

https://graph.facebook.com/myid_facebook/apprequests?message=test&data=INSERT_STRING_DATA&access_token=XXXXXXX&method=post

我试过使用curl,但它不起作用

这是我的源代码

$app_id = 'XXXXXXXXXX';
$app_secret = 'XXXXXXXXXXXXXXX';

$apprequest_url = "https://graph.facebook.com/endif.tc" .
        "/apprequests?message=’pak nurrohman memberi anda tugas’" .
        "&data=’INSERT_STRING_DATA’&access_token=" .
        $this->facebook->getAccessToken() . "&method=post";

$result = file_get_html($apprequest_url);
echo ("Request id number: " . $result['request']);
file_get_html是使用curl加载另一个页面的函数

这个错误是:

"failed to open stream: HTTP request failed! HTTP/1.1 400 Bad Request"
我想在php端执行这个图。有什么解决方案吗


很抱歉,我的英语很差。

我相信这是因为url和您不能只使用method=post的事实

"https://graph.facebook.com/endif.tc"
请使用此代码作为正确的URL

$user_id = 'endif.tc';
$data = 'test';
$message = 'test request';
$url = "https://graph.facebook.com/".urlencode($user_id)."/apprequests" .
    "?message=".urlencode($message).
    "&data=".urlencode($data).
    "&access_token=".$this->facebook->getAccessToken();

另一个问题可能是file\u get\u内容没有将数据发布到页面。如果您希望发布数据,您可能需要使用cURL库。

在对$data进行编码时,您的urlencode方法存在拼写错误。谢谢您所做的一切。。。现在它成功了。。但是您必须编写&method=post来发送应用程序请求..我不知道method=post要求。我已经有一段时间没有在facebook上做任何工作了。很高兴我能帮忙!如果您使用的是curl,我想如果您使用的是方法post,那么在没有&method=post。