【问题标题】:"Invalid OAuth access token" on Marketing API in PythonPython 中营销 API 上的“无效 OAuth 访问令牌”
【发布时间】:2018-06-17 10:17:22
【问题描述】:

我正在尝试使用 Python 访问 Facebook Marketing Api,但我遇到了访问令牌的一些问题。 我运行以下代码:

def get_app_access_token(app_id, app_secret):
     args = {'grant_type': 'client_credentials',
        'client_id': app_id,
        'client_secret': app_secret}

     f = urllib2.urlopen("https://graph.facebook.com/oauth/access_token?" +
                          urllib.urlencode(args))

     resp = json.loads(f.read())
     ### resp gives me {"access_token":"xxxxxx|yyyyyy", "token_type":"bearer"} 
     ### so I extract yyyyyy as my access_token
     result = resp["access_token"].split('|')[1]

access_token = get_app_access_token(APP_ID, SECRET_KEY)
api = FacebookAdsApi.init(APP_ID, SECRET_KEY, access_token)
account = AdAccount(AD_ACCOUNT)
adsets = account.get_ad_sets(fields=[AdSet.Field.name])

我在最后一行收到错误“无效的 OAuth 访问令牌”。

你知道我做错了什么吗?

谢谢!

【问题讨论】:

    标签: python oauth access-token facebook-ads-api facebook-marketing-api


    【解决方案1】:

    我认为将 resultresult = resp["access_token"].split('|')[1] 更改为 result = resp["access_token"]

    如果您将 Python API 提供给 FacebookAdsApi,则 Python API 可以使用 "xxxxxx|yyyyyy" 的格式,但是除非您在 Facebook 开发人员设置中为您获得的令牌正确设置了所有内容,否则我不确定您是否可以获得正确的访问权限。

    使用上面我可以进入广告帐户。但是,我对客户端令牌的权限不允许访问广告系列,而且我使用的是已折旧的 API。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-28
      • 1970-01-01
      • 2015-04-16
      • 1970-01-01
      相关资源
      最近更新 更多