标签: facebook-graph-api

Facebook Open Graph 音乐混乱

我一生中正好度过了 8 个小时。4个小时我试图找出问题所在并进行调试。

问题

我正在尝试将元标签添加到我的网页,其中有一首歌曲。我希望分享该链接的人也能在 Facebook 上播放该曲目。

所以我发现这个我读了非常好的文档。

然后我尝试实现它,这是我的代码。

<html class="local_en_US" xmlns:music="http://ogp.me/ns/music#" xmlns:og="http://ogp.me/ns#">

<meta property="og:type" content="music.song" />
<meta property="music:musician" content="http://testappwebsite.dyndns-office.com/artist/sarya-al-sawas/" />
<meta property="music:duration" content="619" />
<meta property="og:image" content="http://testappwebsite.dyndns-office.com/m/pics/artists/l.4eeea466d2fe79.75675583.jpg" />
<meta property="og:url" content="http://testappwebsite.dyndns-office.com/track/sarya-al-sawas-mnalbortom-al-ta7tani/" />
<meta property="og:site_name" content="BeatBase" />
<meta property="fb:app_id" content="135615343218651" />
<meta property="og:audio" content="http://testappwebsite.dyndns-office.com/m/tracks/t.4eef1d812c56f8.45560770.mp3" />
<meta property="og:audio:type" content="audio/vnd.facebook.bridge" />
Run Code Online (Sandbox Code Playgroud)

然后我尝试分享我的状态的网址进行测试,但我没有得到任何播放按钮。我去调试了。

这就是结果

顺便说一句,过去 4 个小时用于在网上搜索线索。

我找到了一些。

Facebook Music Bridge(让我更加困惑。)

ogp.com 没有找到任何答案

php facebook facebook-graph-api

1
推荐指数
1
解决办法
1804
查看次数

脸书 ID 变更

我正在开发一个使用 Facebook 登录的网络。当用户登录时,我存储 facebook id。

问题是我更改了 AppID 和 AppSecret (因为我在 facebook 中创建了一个新应用程序)并且 facebook 返回的用户 ID 与我的旧应用程序不同

我使用 PHP v4.0 Facebook SDK,这是我的代码:

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

    $user = $facebook->getUser();
    $me = null; 

    if ($user) {
        try {
            $me = $facebook->api('/me');
            $this->facebook_id = $me['id'];
Run Code Online (Sandbox Code Playgroud)

然后我将它存储在数据库中..

谢谢!

php facebook facebook-graph-api facebook-php-sdk

1
推荐指数
1
解决办法
703
查看次数

尝试上传视频块时收到 error_subcode 1363030

我尝试使用 graph-api v2.3 和 qNetworkAccessManager 将视频上传到 facebook。我成功通过授权并开始上传过程,但上传第一个块以 http 错误 500 和 facebook api 错误代码 1363030 结束。看起来就像 fb 服务器无法访问,但旧 api (2.1) 工作正常。所以,我想,这可能是我的问题。有一部分代码是我发布视频块的

QNetworkRequest request;
request.setUrl(QUrl(QString("https://graph-video.facebook.com/v2.3/me/videos")));
QHttpMultiPart *body = new QHttpMultiPart(QHttpMultiPart::FormDataType);

_file = new QFile(filename);
_file->open(QIODevice::ReadOnly);

QHttpPart tokenPart, phasePart, sessionPart, offsetPart, dataPart;
tokenPart.setHeader(QNetworkRequest::ContentDispositionHeader, QVariant("form-data; name=\"access_token\""));
tokenPart.setBody(accessToken.toUtf8());

phasePart.setHeader(QNetworkRequest::ContentDispositionHeader, QVariant("form-data; name=\"upload_phase\""));
phasePart.setBody(phaseTransfer.toUtf8());

sessionPart.setHeader(QNetworkRequest::ContentDispositionHeader, QVariant("form-data; name=\"upload_session_id\""));
sessionPart.setBody(_sessionId.toUtf8());

offsetPart.setHeader(QNetworkRequest::ContentDispositionHeader, QVariant("form-data; name=\"start_offset\""));
offsetPart.setBody(QString::number(_startOffset).toUtf8());

QHttpPart dataPart;
dataPart.setHeader(QNetworkRequest::ContentDispositionHeader, QVariant("form-data; name=\"video_file_chunk\""));
QByteArray data = _file->read(_endOffset - _startOffset);
dataPart.setBody(data);

body->append(tokenPart);
body->append(phasePart);
body->append(offsetPart);
body->append(sessionPart);
body->append(dataPart);

_server->post(request, body);
Run Code Online (Sandbox Code Playgroud)

也许有人知道解决方案或者只是有 graph-api v2.3 的工作示例?

facebook facebook-graph-api

1
推荐指数
1
解决办法
1948
查看次数

Facebook Ads Insights API 的 date_start 和 date_stop 是在哪个时区发送的?

Facebook 的 Ads Insights API 返回date_startdate_stop但由于它们是日期对象,我无法确定使用哪个时区来划分日期。是使用 Facebook 的 API 时区,他们提到是 PT (UTC -8) 还是根据 AdAccount 的时区,因为我在 Ads Insights API 文档中发现提到了帐户的时区。

facebook facebook-graph-api facebook-ads-api facebook-marketing-api

1
推荐指数
1
解决办法
2990
查看次数

无法将 facebook api 导入 python 代码

我想在 python 上使用图形 API,这样我就可以对帖子进行分析。到目前为止,我尝试导入库:

import facebook
Run Code Online (Sandbox Code Playgroud)

但我得到了错误

import facebook
  File "C:\Users\matan\Desktop\Machine Learning Forex\facebook.py", line 11
    pip install -e git+https://github.com/mobolic/facebook-sdk.git#egg=facebook-sdk
              ^
SyntaxError: invalid syntax

  File "C:\Users\matan\Desktop\Machine Learning Forex\facebook.py", line 11
    pip install -e git+https://github.com/mobolic/facebook-sdk.git#egg=facebook-sdk
              ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

我怎样才能导入这个库?

python facebook-graph-api

1
推荐指数
1
解决办法
7830
查看次数

解析 Facebook Graph getGraphEdge 数组

如何在php中解析这个数组?

$graphNode = $response->getGraphEdge();

Facebook\GraphNodes\GraphNode Object
(
    [items:protected] => Array
        (
            [name] => Haridwar
            [id] => 108165019208093
        )

)
Facebook\GraphNodes\GraphNode Object
(
    [items:protected] => Array
        (
            [name] => Haridwar - ??????? ????????
            [id] => 1421343878181284
        )

)
Facebook\GraphNodes\GraphNode Object
(
    [items:protected] => Array
        (
            [name] => Haridwar , Rishikesh
            [id] => 422468281161935
        )

)
Facebook\GraphNodes\GraphNode Object
(
    [items:protected] => Array
        (
            [name] => Harkipodi, Haridwar
            [id] => 1729854440364388
        )

)
Facebook\GraphNodes\GraphNode Object
(
    [items:protected] => Array
        (
            [name] => Haridwar, …
Run Code Online (Sandbox Code Playgroud)

php facebook-graph-api

1
推荐指数
1
解决办法
391
查看次数

克服 Facebook Marketing API 中的速率限制

具体来说,我正在尝试做一些与这个问题非常相似的事情(有同样的问题):FB Ads API (#17) User request limit connected

但是,我正在尝试在 python 中执行此操作(并且自 15 年以来 API 发生了很大变化)。这是我的代码(它把我踢出去,即使有睡眠时间) - 我想知道是否有人可以帮助我调用具有类似信息的数组,以减少我的总调用次数。

my_account = AdAccount(ad_account_id)
camps = my_account.get_campaigns(fields=[Campaign.Field.name])

for campaign in camps[0:100]:
    time.sleep(5)
    print campaign[Campaign.Field.name]
    adsets = campaign.get_ad_sets([AdSet.Field.name, AdSet.Field.status])
    for adset in adsets:
        print '\t', adset[AdSet.Field.name]
        for stat in adset.get_insights(fields=[
        'impressions',
        'clicks',
        'spend',
        'unique_clicks',
        ]):
            for statfield in stat:
                print "\t\t%s:\t%s" % (statfield, stat[statfield])
Run Code Online (Sandbox Code Playgroud)

一般地说,我打算如何在此限制范围内为我的需求(大规模更改)编码?实际上,我想编写一个代码来检查和更改我公司每个广告组中的一些选项(例如“扩展兴趣...”从关闭到开启)。我们有数百个广告集,API 文档说更改消耗的调用次数是创建调用的 10-100 倍(我两个都没有遇到,只是阅读!)。这是否只是在每次更改之间让代码休眠 60 秒的问题?他们不太清楚你在一个时间段内接到多少电话,或者检查这些电话的时间段有多宽。例如,如果是每日限制,那么睡眠将无法帮助我更改 1200 个广告组的选项。

我确实看到了有关升级的文档(https://developers.facebook.com/docs/marketing-api/access),但是在审核过程中,所有内容都基于公共(面向客户、多用户)应用程序。我想要做的就是能够从仅限桌面开发的内部脚本进行调用以进行批量更改。我找错地方了吗?

python facebook facebook-graph-api facebook-marketing-api

1
推荐指数
1
解决办法
2067
查看次数

在 Django 模型中保存 Facebook 图片(REST Social Oath2)

这个问题是关于使用https://github.com/PhilipGarnero/django-rest-framework-social-oauth2库自动在 Django 模型中保存 Facebook 个人资料图片。

编辑: 有两种方法可以解决这个问题:将图像的 URLCharField()保存在或使用ImageField(). 两种解决方案都可以。


上面的库允许我使用不记名令牌创建和验证用户。我已经创建了配置文件模型:

class UserProfile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE, related_name='userprofile')
    photo = models.FileField(blank=True) # OR
    ######################################
    url = 'facebook.com{user id}/picture/'
    photo = models.CharField(default=url)

@receiver(post_save, sender=User)
def create_user_profile(sender, instance, created, **kwargs):
    if created:
        UserProfile.objects.create(user=instance)

@receiver(post_save, sender=User)
def save_user_profile(sender, instance, **kwargs):
    instance.userprofile.save()
Run Code Online (Sandbox Code Playgroud)

它会自动为每个用户创建用户配置文件。现在,我想添加以下代码来保存 Facebook 中的照片。Facebook API 需要 user id获取此图片。

photo = 'https://facebook/{user-id}/picture/'
UserProfile.objects.create(user=instance, photo=photo)
Run Code Online (Sandbox Code Playgroud)

以上不起作用,因为

1)我不知道从哪里得到user id

2)图像不能这样存储,我需要将其转换为字节或其他方法。

python django facebook-graph-api django-rest-framework django-oauth

1
推荐指数
1
解决办法
1260
查看次数

FacebookGraphAPIError: (#210) 此调用需要页面访问令牌

我正在使用 Passport-Facebook 策略进行身份验证。请在下面找到代码:

new FacebookStrategy(
      {
        clientID: authConfig.facebookAuth.clientID,
        clientSecret: authConfig.facebookAuth.clientSecret,
        callbackURL: authConfig.facebookAuth.callbackURL,
        profileURL: "https://graph.facebook.com/v2.10/me",
        authorizationURL: "https://www.facebook.com/v2.10/dialog/oauth",
        tokenURL: "https://graph.facebook.com/v2.10/oauth/access_token",
        profileFields: ["email", "profile_pic", "gender"]
      },
      function(accessToken, refreshToken, profile, done) {
Run Code Online (Sandbox Code Playgroud)

这给了我以下错误:

FacebookGraphAPIError: (#210) This call requires a Page access token.
Run Code Online (Sandbox Code Playgroud)

如何传递页面访问令牌?或者这与其他事情有关?

node.js facebook-graph-api passport-facebook passport.js

1
推荐指数
1
解决办法
2906
查看次数

Facebook Graph API - 获取 Facebook 群组帖子

我正在尝试使用 fb graph api、php sdk 从 facebook 群组获取帖子。我可以从管理员组获取帖子,但是当我尝试从成员位置获取帖子时,它会返回错误

Graph returned an error: (#200) Requires either admin permissions or member using installed app.
Run Code Online (Sandbox Code Playgroud)

这是代码

    try {               
       $postsdata= $fb->get('/6999406078/feed?limit=5&$accessToken='.APP_ID.'|'.APP_SECRET);
        $posts= $requestGroups->getGraphEdge()->asArray();
    } catch(Facebook\Exceptions\FacebookResponseException $e) {
        // When Graph returns an error
        echo 'Graph returned an error: ' . $e->getMessage();
        exit;
    } catch(Facebook\Exceptions\FacebookSDKException $e) {
        // When validation fails or other local issues
        echo 'Facebook SDK returned an error: ' . $e->getMessage();
        exit;
    }
    $i =0;
    foreach ($posts as $key) {
        $i++;
        echo" …
Run Code Online (Sandbox Code Playgroud)

facebook-graph-api facebook-php-sdk

1
推荐指数
1
解决办法
3803
查看次数