首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >是否有一个通知脚本突然开始丢弃start代码400:无效块的原因?

是否有一个通知脚本突然开始丢弃start代码400:无效块的原因?
EN

Stack Overflow用户
提问于 2022-06-21 12:45:41
回答 1查看 224关注 0票数 0

我已经让这个脚本运行了3个多月,没有任何问题,然而,上周它开始抛出以下内容:

代码语言:javascript
运行
复制
Error   
Exception: Request failed for https://hooks.slack.com returned code 400. Truncated server response: invalid_blocks (use muteHttpExceptions option to examine full response)

我想这是剧本的相关部分。

代码语言:javascript
运行
复制
  for (let i = 0; i in vistasVencimiento; i++){
    if (vistasVencimiento[i][0] instanceof Date == true){
      let differenceInMs = dateToday - vistasVencimiento[i][0];
      let differenceInDaysRaw = differenceInMs / (1000 * 60 * 60 * 24);

      if(differenceInDaysRaw >= 0 && statusColumn[i] !== "Pendiente_de_despacho"){
        //agregar a array de vencidos
        result.push(sumariantesVistas[i], causasCaratulas[i], '\n');
      }
    }
  };
  console.log(result);
  if (result === undefined || result.length === 0 ){
    let payload ={
    "blocks": [
        {
            "type": "section",
            "text": {
                "type": "mrkdwn",
                "text": ":bell: *Cuales Vistas estan vencidas?* :bell:"
            }
        },
        {
            "type": "section",
            "text": {
                "type": "mrkdwn",
                "text":"Aparentemente, ninguna"
            }
        },
    ]
  }
      let headers = {
      'Content-type': 'application/json'
    };
    let options = {
      headers : headers,
      method: 'POST',
      payload: JSON.stringify(payload)
    };
  UrlFetchApp.fetch(url, options);

  }else{
    let result_string = result.join('\n');
    let payload ={
    "blocks": [
        {
            "type": "section",
            "text": {
                "type": "mrkdwn",
                "text": ":bell: *Cuales Vistas estan vencidas?* :bell:"
            }
        },
        {
            "type": "section",
            "text": {
                "type": "mrkdwn",
                "text":"Estas: "
            }
        },
        { 
            "type": "section",
            "text": {
                "type": "mrkdwn",
                "text": result_string
            }
        },      
    ]
  }
      let headers = {
      'Content-type': 'application/json'
    };
    let options = {
      muteHttpExceptions: false,
      headers : headers,
      method: 'POST',
      payload: JSON.stringify(payload)
    };
  UrlFetchApp.fetch(url, options);

  };

现在,我知道它与"text": result_string相关,因为我尝试用类似于"text":"test“之类的东西来代替它,但是通知的全部目的是将格式化的字符串发送到一个松弛的workplace通道,在那里,我基本上不知道为什么会突然出现这样的失败。

编辑:这里发生了一些非常奇怪的事情,首先,causasCaratulasi.replace(/"/g,‘’“)没有修复任何问题,其次,causasCaratulas内部有两个列,如果我只加载一个列(不管脚本是哪一列),我甚至尝试将数组拆分成两个排序列表,在这种情况下,它仍然抛出错误。因此,这个错误发生在试图同时将这两列发送到松弛api之间?

编辑2:数据的结构如下所示。问题似乎是,每当我试图同时发送大小写号和大小写名时,我会发现一个错误,然而,这似乎取决于某种神秘的符号,如果它甚至是一个符号,它会如何识别。

EN

回答 1

Stack Overflow用户

发布于 2022-06-21 13:18:59

也许您的文本数据包含&<>?试试这个:

代码语言:javascript
运行
复制
    let result_string = result
      .join('\n')
      .replace(/&/g, '&amp;')
      .replace(/</g, '&lt;')
      .replace(/>/g, '&gt;');

参见Slack参考中的转义文本

你也应该搜索你的数据,寻找可能在工作中抛出扳手的标记符号。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72701031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档