将操作发布到时间线时出现错误请求/方法未实现错误

问题描述 投票:0回答:1

我正在开发一个 Joomla 网站,并使用 myApi 来处理大多数 Facebook 集成。 Like 按钮工作正常,并从 myApi 插入的 og 元标签中获取信息。

在网站上,用户可以使用 facebook 登录 - 我已在 myApi 代码中添加了publish_actions 权限,并且我知道这是被请求的,因为在授权应用程序时,oauth 对话框显示诸如从餐馆订购之类的操作(该操作是添加到我的 Facebook 应用程序)将发布到时间线。

现在,在订购时,我检查用户在 myApi 用户表中是否有条目,如果有,我提供一个复选框,让客户选择是否希望将订单操作发布到她的时间线。如果勾选,我会使用curl 尝试将订单操作发布到facebook。我一直在使用我的帐户进行测试 - 我已向该应用程序授权了所请求的所有权限。我使用 myApi 接口来获取我的用户访问令牌。我将 access_token 和对象 url 添加到 url 作为查询字符串参数,然后通过curl 发布到它。

我得到的卷曲响应是:

<HTML><HEAD>
<TITLE>400 Bad Request</TITLE>
</HEAD><BODY>
<H1>Method Not Implemented</H1>
Invalid method in request<P>
</BODY></HTML>

在浏览器中访问生成的网址时得到的响应是

{
"data": [

],
"paging":{
"next": "https://graph.facebook.com/me/og_collegekhana:order_from?restaurant=http\u00253A\u00252F\u00252Fwww.collegekhana.com\u00252Fstates\u00252Ftamil-nadu\u00252Fcampus-1\u00252Feat-1&access_token=[the token I got]&offset=25&limit=25"
}
}

我使用

检查了 url 的对象 id

https://graph.facebook.com/?ids=http://www.collegekhana.com/states/tamil-nadu/campus-1/eat-1

我没有获得对象 ID。相反我得到

{
"http://www.collegekhana.com/states/tamil-nadu/campus-1/eat-1": {
"id": "http://www.collegekhana.com/states/tamil-nadu/campus-1/eat-1"
}
}

我完全迷失了,希望有人能告诉我我做错了什么。

facebook facebook-graph-api joomla
1个回答
1
投票

问题在于,必须添加查询字符串参数,而不是执行 cURL POST 方法=发布到 URL。

© www.soinside.com 2019 - 2024. All rights reserved.