当前位置: 首页 > 知识库问答 >
问题:

Google Apps脚本中两个调用(POST和GET)之间的延迟

易京
2023-03-14

我对StackOverflow的第一个请求!我真的希望你能帮助我!

我想创建一个流程,将数据报告从系统自动化到工作表;我想我可以使用他们的API、应用程序脚本,并将数据导出到google sheets上。
为此,我需要在API上运行两个调用:

  1. 一个POST调用,它在系统中运行报告(它需要一个日期范围作为主体)。作为回报,我将获得一个与生成的数据相关联的ID,它将在一段时间后过期。
  2. GET调用,它是一个URL,包含在第一次调用中生成的ID,并通过连接创建。

第一次通话效果良好;我成功地获得了ID作为回报。

我的问题是,当我运行第二次调用时,我没有得到任何数据回报,我不明白有什么问题,我可以看到网址连接正确,因为如果我从日志中复制网址,并在另一个应用程序脚本或在邮递员上,它工作得非常好!如果我做错了什么,有人能帮我吗?这是代码


    function callEvents() {
      var API_KEY = "xxx";
      var data = { 'Start Date': '2021-05-03', 'End Date': '2021-06-03' }
      var options = {
        'method' : 'post',
      'contentType': 'application/json',
        'payload' : JSON.stringify(data) };
    //This is the first call
       var urlEncoded = encodeURI('https://website/api/dataviewresult/
                 etc/json/?api_key=' + API_KEY);
       var url = UrlFetchApp.fetch(urlEncoded, options);
      var result = JSON.parse(url.getContentText());
     Logger.log(url.getContentText());
    //here I retrieve the ID to use in the second call
    var ipdataview = (result["contents"]["id"]);
      Logger.log(ipdataview);

//here is the concatenation and the second call
      var urlEncoded2 = encodeURI('https://website/api/dataviewresult/etc/json/'+ipdataview+'/?api_key=' + API_KEY);
        Logger.log(urlEncoded2);
      var response = UrlFetchApp.fetch(urlEncoded2);
        Logger.log(response.getContentText());

共有1个答案

谭繁
2023-03-14

我找到了解决方案,我做的第二个调用(获取)从第一个太快,所以数据没有被拾取。

我使用utilities.sleep()大约2秒钟,它工作得很好。

谢谢大家的帮助!s

 类似资料:
  • 问题内容: 方法论问题: 我有一个“主” python脚本,该脚本在系统上无限循环地运行,并且我想偶尔与其他一些python脚本一起向其发送信息(例如,json数据字符串),这些脚本稍后将由本人或另一个程序启动并且将在发送字符串后立即结束。 我不能在这里使用子流程,因为我的主脚本不知道其他脚本何时运行以及它们将执行什么代码。 我正在考虑使主脚本在本地端口上侦听,并使其他脚本在该端口上向它发送字符串

  • 该程序的工作原理如下: 我按名称查找元素 我遇到的问题是3发生得太快,程序无法定位元素。我想我需要在3中放一个延迟或其他东西,当元素被找到时激活4。如果有帮助的话,我也在使用硒。 我没有尝试过任何东西,因为我不知道我能做什么,因为我对这一点非常陌生。 代码如下:

  • 问题内容: 我有两个时间字符串;例如。同一天的“ 09:11”和“ 17:22”(格式为hh:mm)。如何计算这两者之间的时间差(以分钟为单位)? 标准库可以这样做吗? 例: 给定hh:mm中的小时和分钟,是否有更简单的方法来执行此操作 问题答案: 一个纯bash解决方案: 使用的另一种解决方案(我们使用小时/分钟,因此日期并不重要) 参见http://en.wikipedia.org/wiki/

  • 本文向大家介绍浅谈原生JS中的延迟脚本和异步脚本,包括了浅谈原生JS中的延迟脚本和异步脚本的使用技巧和注意事项,需要的朋友参考一下 一、延迟脚本 defer HTML4.0中为<script> 标签添加了个defer属性。属性的用途是表民脚本在执行时不会影响页面的构造。 脚本会被延迟到页面加载完毕的时候,执行。也就是当浏览器解析到</html> 标签后才会执行代码。在HTML5规范中,defer属

  • 我试图在两个日期和两个时间之间得到一列的总和,其中日期不同。 我的列是: 表1=时间1、时间2、日期1、日期2 表 2 = 日期、时间、事件 理想情况下,该公式将给出日期1/时间1和日期2/时间2之间的事件总数 我已经尝试了下面的公式,但是我收到的是这两个日期之间的事件总数,而不是这两个日期之间的事件数量。 *对于上下文,Sheet1具有事件数据,“ProductMadness - Postlog

  • 下面有4个bash片段。我用<代码>打电话给他们。/script.sh a b c 我不知道 $ 和 * 之间的确切区别是什么,我认为“$ @”和应该是一样的,但它们不是。为什么?