gpt4 book ai didi

javascript - 将 Facebook API Curl 请求转换为 Javascript,以便在 Google 表格中使用 ImportJSON 函数

转载 作者:行者123 更新时间:2023-12-02 23:45:29 25 4
gpt4 key购买 nike

我正在尝试使用 ImportJSON Google Apps Script from Brad Jasper 将一些 Facebook Ad Insights API 数据提取到 Google Sheets 中。我正在尝试使用参数和访问 token 的键/值对将 cURL 请求选项转换为可用的 JavaScript 变量作为“fetchOptions”。由于它们被标记为 cURL 的 -d/--data,我尝试将它们添加为“有效负载”,但由于 Facebook 需要 GET 方法而不是 POST,因此它不会读取有效负载。因此,当脚本“工作”时,它会拉取运行报告 ID,因为它使用 POST 请求而不是 GET 请求来实际获取我想要检索的数据。

以下是 cURL 请求的示例:

curl -G \
-d "date_preset=last_7_days" \
-d "access_token=howdy" \
"https://graph.facebook.com/v3.2/1234567890/insights"

这是迄今为止我尝试使用的 ImportJSON Google Script 函数的内容:

function ImportJSONAdvanced(url, fetchOptions, query, parseOptions, includeFunc, transformFunc) {
var fetchOptions = {"method": "GET", payload: {"access_token" : "howdy", "date_preset" : "last_7_days"}};
var jsondata = UrlFetchApp.fetch(url, fetchOptions);
var object = JSON.parse(jsondata.getContentText());

return parseJSONObject_(object, query, parseOptions, includeFunc, transformFunc);
}

请注意,使用该函数时,URL 本身作为工作表单元格级别的参数传递。

非常感谢您在此事上的任何帮助。谢谢!

最佳答案

  • 您已经确认您的curl 命令工作正常。
  • 您想要将以下curl 命令转换为Google Apps 脚本。

    curl -G \
    -d "date_preset=last_7_days" \
    -d "access_token=howdy" \
    "https://graph.facebook.com/v3.2/1234567890/insights"

如果我的理解是正确的,那么修改一下怎么样?

修改点:

  • 当使用-G-d "date_preset=last_7_days"-d "access_token=howdy"运行curl命令时,这些键和值被请求为查询参数。因此,当此命令转换为 Google Apps 脚本时,需要将这些键和值转换为查询参数。
  • 直到最近,在 UrlFetchApp 中,当以 GET 方法请求 payload 时,我已经确认 payload 的值被用作查询参数。但现在我确认,即使使用 method: "GET" 作为 GET 方法请求 payload,它也会作为 POST 方法请求。我不确定这是否是暂时的情况。但我想错误的原因可能是这样的。

当上述修改点反射(reflect)到您的脚本中时,它会变成如下所示。

修改后的脚本:

请修改如下并再次运行。

从:
var fetchOptions = {"method": "GET", payload: {"access_token" : "howdy", "date_preset" : "last_7_days"}};
var jsondata = UrlFetchApp.fetch(url, fetchOptions);
到:
var jsondata = UrlFetchApp.fetch(url + "?access_token=howdy&date_preset=last_7_days");

注意:

  • 这个修改后的脚本与curl命令相同。但如果出现错误,请再次确认URL、访问 token 和其他参数。关于这些参数,我不确定正确的值。对于这种情况,我深表歉意。

引用:

如果我误解了您的问题并且结果不是您想要的,我深表歉意。

关于javascript - 将 Facebook API Curl 请求转换为 Javascript,以便在 Google 表格中使用 ImportJSON 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55877120/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com