【问题标题】:Facebook Live Comments API 400 Bad RequestFacebook 实时评论 API 400 错误请求
【发布时间】:2021-10-11 11:38:28
【问题描述】:

我正在尝试从实时视频中获取 cmets 流。目前我正在尝试以此为指导:

https://developers.facebook.com/.../endpoints/live-comments

问题是即使我不使用 JavaScript 并且我只是使用 cURL 发送请求并将视频 ID 替换为实时视频的 ID 并放入我的用户访问令牌或者我也尝试了页面访问令牌我刚收到一个 400 错误请求。我使用的是上面链接中完全相同的示例,只是替换了所需的变量。

我的请求网址是这样的:

https://streaming-graph.facebook.com/{liveID}/live_comments?access_token={accessToken}&comment_rate=one_per_two_seconds&fields=from{name,id},message`

除了我删除 {} 并将它们分别替换为 ID 和访问令牌。 在文档的底部,它说 400 错误意味着我应该检查 URL 和参数是否正确。你觉得上面的网址有什么问题吗?我已经通过 cURL、Postman 直接发送了请求,还使用了文档中的 EventSource,每次都会收到 400 Bad Request。

var source = new EventSource(
        `https://streaming-graph.facebook.com/{liveID}/live_comments?access_token={accessToken}&comment_rate=one_per_two_seconds&fields=from{name,id},message`)

    source.onmessage = function (event) {
        console.log(event)
    }

    source.onerror = function (error) {
        console.log(error)
    }

    source.onopen = function (event) {
        console.log(event)
    }

上面示例中唯一触发的是source.onerror,我只收到了 400 Bad Request。

我知道我的 ID 和 Token 是正确的,因为如果我从这里 (https://developers.facebook.com/docs/graph-api/reference/live-video/comments/) 使用图形 API 来提取它可以工作的 cmets,但是该方法不会给我一个 cmets 流,因为它们进来它只会给出任何东西cmets 在运行查询时就在那里。

【问题讨论】:

    标签: facebook facebook-javascript-sdk facebook-live-api


    【解决方案1】:

    好吧,经过更多测试后,我想通了。原来我提供的是“Post ID”,而不是“Live ID”,这是一个不同的图形查询。

    我之前使用的是:

    https://graph.facebook.com/v11.0/{Page_Name}/posts

    并从包含实时视频的帖子中获取 ID。我真正需要做的是:

    https://graph.facebook.com/v11.0/{Page_Name}/live_videos

    这将返回正确的 ID 以馈入上述 live_cmets 端点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-06-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-11
      • 1970-01-01
      • 2022-01-04
      相关资源
      最近更新 更多