繁体   English   中英

使用UrlFetchApp进行Facebook API营销

[英]Facebook API Marketing with UrlFetchApp

我正在尝试将广告系列的效果纳入Google电子表格中。 我已经写了这段代码

function myFunction() {

  var url = "https://graph.facebook.com/v4.0/CAMPAIGNID/insights"
  var params = {
            'access_token':'MYTOKEN',
                 }
      var options = {
        'method' : 'get',
        'payload' : params
      }
 var response = UrlFetchApp.fetch(url, options)
 Logger.log(response)
}

当我运行此代码时,它将向我检索以下信息:

{"report_run_id":"234313017579333"} 

但我在寻找广告系列的见解,而不是报告。 有谁知道为什么要找我这个?

ps:运行此命令时: https://graph.facebook.com/v4.0/CAMPAIGNID/insights : https://graph.facebook.com/v4.0/CAMPAIGNID/insights

在Facebook的Graph API中,它为我提供了竞选活动的见解。 因此,当我尝试从Google Apps脚本执行此操作时,我无法理解另一个答案。

这听起来像您实际上是在发出POST请求,而不是GET-因为发布到此边缘应该触发后台创建报告, https://developers.facebook.com/docs/marketing-api/reference/ ad-campaign-group / insights /#Creating

发布到此边缘时,将创建一个AdReportRun。


https://developers.google.com/apps-script/reference/url-fetch/url-fetch-app#fetchurl-params ,在payload参数的描述中,

某些HTTP方法(例如GET)不接受有效负载。

因此,因为您提供了有效负载,所以可能使它使用POST,而忽略了您尝试指定'method' : 'get'

不要提供payload ,而是将访问令牌直接作为查询字符串参数附加到URL。

var url = "https://graph.facebook.com/v4.0/CAMPAIGNID/insights?access_token=…"

(您可能可以完全删除options对象,然后仅将URL作为单个参数调用fetch ,因为无论如何GET都是默认的。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM