Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从Jive响应接收到格式错误的HTML错误,如何继续?_Html_Google Apps Script_Malformed - Fatal编程技术网

从Jive响应接收到格式错误的HTML错误,如何继续?

从Jive响应接收到格式错误的HTML错误,如何继续?,html,google-apps-script,malformed,Html,Google Apps Script,Malformed,目前为止,在尝试从JiveJSON响应解析JSON以部署到应用程序脚本时,每个步骤都取得了成功。此时,我收到一个格式错误的HTML错误,不太确定如何响应。我已经发布到Jive社区,但我认为没有人在那里工作了 更新: 以下是我用来在应用程序脚本中生成此问题的代码: 代码.gs function doGet(request) { return HtmlService.createTemplateFromFile('Page').evaluate().setSandboxMode(HtmlSer

目前为止,在尝试从JiveJSON响应解析JSON以部署到应用程序脚本时,每个步骤都取得了成功。此时,我收到一个格式错误的HTML错误,不太确定如何响应。我已经发布到Jive社区,但我认为没有人在那里工作了

更新:

以下是我用来在应用程序脚本中生成此问题的代码:

代码.gs

function doGet(request) { 
  return HtmlService.createTemplateFromFile('Page').evaluate().setSandboxMode(HtmlService.SandboxMode.IFRAME);
}

function include(filename) { 
  var finalRequest = UrlFetchApp.fetch('https://www.cloudconnect.xxx....');

  var data = finalRequest.toString().replace("throw 'allowIllegalResourceCall is false.';", "").trim(); 

  data = JSON.parse(data);

  var returnData = [];

  for(var i in data){
    if(i == "list"){
     var content = data[i];
    }
    for(var i in content){
     var text = content[i];
      var json_string = JSON.stringify(text).replace(/[&]/g, "and");
      returnData.push(json_string);
    }
  }
  return returnData;
}
Page.html

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
    <?!= include('Stylesheet'); ?>
  </head>
  <body>
  <script>
    function displayData(responseData) {
        document.getElementById('output').innerHTML = responseData.join(", ");
    } 
    google.script.run.withFailureHandler(displayData).withSuccessHandler(displayData).include();
    </script>
  </body>
</html>

功能显示数据(响应数据){
document.getElementById('output').innerHTML=responseData.join(“,”);
} 
google.script.run.withFailureHandler(displayData).withSuccessHandler(displayData).include();
发布到web应用程序时,我得到的响应如下:

Exception: Malformed HTML content: {"content":{"text":"<body><!-- [DocumentBodyStart:c062b27a-e734-42fb-a146-c2d978fb77da] --><div class=\"jive-rendered-content\"></div><!-- [DocumentBodyEnd:c062b27a-e734-42fb-a146-c2d978fb77da] --></body>","editable":false,"type":"text/html"},"subject":"GCI - Partner Project Plan - Template","type":"file"},{"content":{"text":"<body><!-- [DocumentBodyStart:1248f967-2b32-42d0-a9aa-a20f40485c77] --><div class=\"jive-rendered-content\"><span>Unable to access trainingand#160;Google Cloud Sales Credential</span></div><!-- [DocumentBodyEnd:1248f967-2b32-42d0-a9aa-a20f40485c77] --></body>","editable":false,"type":"text/html"},"subject":"Unable to access training Google Cloud Sales Credential","type":"update"},{"content":{"text":"<body><!-- [DocumentBodyStart:67e6b807-8421-4e61-a3c9-a08943f8a368] --><div class=\"jive-rendered-content\"><span>I am having issues with Capital Letter Confusion ie - Example.Com and example.com.I have major account confusion as a result.Thanks for reading.</span></div><!-- [DocumentBodyEnd:67e6b807-8421-4e61-a3c9-a08943f8a368] --></body>","editable":false,"type":"text/html"},"subject":"I am having issues with Capital Letter Confusion ie - Example.Com and example.com.I have major...","type":"update"},{"content":{"text":"<body><!-- [DocumentBodyStart:0013baf2-c12e-4869-9849-0959d99bdd77] --><div class=\"jive-rendered-content\"><p>or how can I know who is the admin? if they no longer have any IT administrator and the last one they had quits two years ago with zero documentation?</p></div><!-- [DocumentBodyEnd:0013baf2-c12e-4869-9849-0959d99bdd77] --></body>","editable":false,"type":"text/html"},"subject":"Why a gsuite edu user shows that his admin is a domain instead of an name or email account?","type":"discussion"},{"content":{"text":"<body><!-- [DocumentBodyStart:907a55ec-9332-43fe-876c-00384af7be79] --><div class=\"jive-rendered-content\"><span>Startup FB Data Science University will launch in the San Francisco, CA and Cloud Tech developers as individuals or companies can be Partner of the Startup Tech University without capital.</span><a class=\"jive-link-external-small\" href=\"https://www.cloudconnect.goog/external-link.jspa?url=http%3A%2F%2Fbit.ly%2Ffbdatascienceuniversity\" rel=\"nofollow\" target=\"_blank\">xxx</a></div><!-- [DocumentBodyEnd:907a55ec-9332-43fe-876c-00384af7be79] --></body>","editable":false,"type":"text/html"},"subject":"Startup FB Data Science University will launch in the San Francisco, CA and Cloud Tech developers...","type":"update"},{"content":{"text":"<body><!-- [DocumentBodyStart:c062b27a-e734-42fb-a146-c2d978fb77da] --><div class=\"jive-rendered-content\"></div><!-- [DocumentBodyEnd:c062b27a-e734-42fb-a146-c2d978fb77da] --></body>","editable":false,"type":"text/html"},"subject":"GCI - Partner Project Plan - Template","type":"file"},{"content":{"text":"<body><!-- [DocumentBodyStart:1248f967-2b32-42d0-a9aa-a20f40485c77] --><div class=\"jive-rendered-content\"><span>Unable to access trainingand#160;Google Cloud Sales Credential</span></div><!-- [DocumentBodyEnd:1248f967-2b32-42d0-a9aa-a20f40485c77] --></body>","editable":false,"type":"text/html"},"subject":"Unable to access training Google Cloud Sales Credential","type":"update"},{"content":{"text":"<body><!-- [DocumentBodyStart:67e6b807-8421-4e61-a3c9-a08943f8a368] --><div class=\"jive-rendered-content\"><span>I am having issues with Capital Letter Confusion ie - Example.Com and example.com.I have major account confusion as a result.Thanks for reading.</span></div><!-- [DocumentBodyEnd:67e6b807-8421-4e61-a3c9-a08943f8a368] --></body>","editable":false,"type":"text/html"},"subject":"I am having issues with Capital Letter Confusion ie - Example.Com and example.com.I have major...","type":"update"},{"content":{"text":"<body><!-- [DocumentBodyStart:0013baf2-c12e-4869-9849-0959d99bdd77] --><div class=\"jive-rendered-content\"><p>or how can I know who is the admin? if they no longer have any IT administrator and the last one they had quits two years ago with zero documentation?</p></div><!-- [DocumentBodyEnd:0013baf2-c12e-4869-9849-0959d99bdd77] --></body>","editable":false,"type":"text/html"},"subject":"Why a gsuite edu user shows that his admin is a domain instead of an name or email account?","type":"discussion"},{"content":{"text":"<body><!-- [DocumentBodyStart:907a55ec-9332-43fe-876c-00384af7be79] --><div class=\"jive-rendered-content\"><span>Startup FB Data Science University will launch in the San Francisco, CA and Cloud Tech developers as individuals or companies can be Partner of the Startup Tech University without capital.</span><a class=\"jive-link-external-small\" href=\"https://www.cloudconnect.goog/external-link.jspa?url=xxx\" rel=\"nofollow\" target=\"_blank\">xxx</a></div><!-- [DocumentBodyEnd:907a55ec-9332-43fe-876c-00384af7be79] --></body>","editable":false,"type":"text/html"},"subject":"Startup FB Data Science University will launch in the San Francisco, CA and Cloud Tech developers...","type":"update"}.
    at [unknown function]([unknown file]:5:22)
    at [unknown function]([unknown file]:18:3)
    at doGet(Code:2:53)
异常:格式错误的HTML内容:{“内容”:“{”文本“:”,“可编辑的”:错误,“类型”:“文本/HTML”},“主题”:“GCI-合作伙伴项目计划-模板”,“类型”:“文件”},{“内容”:“{”文本“:“无法访问培训和#160;谷歌云销售凭证”,“可编辑的”:错误,“类型”:“文本/HTML”},“主题”:“无法访问培训谷歌云销售凭证”,“键入”:“更新”},{“内容”:{“文本”:“我在ie-Example.Com和Example.Com大写字母混淆方面有问题。因此我的主要帐户混淆。感谢阅读。”,“可编辑”:false,“键入”:“text/html”},“主题”:”我有大写字母混淆的问题,例如-Example.Com和Example.Com。我有major…,“type”:“update”},{“content”:{“text”:“或者我如何知道谁是管理员?如果他们不再有任何IT管理员,而他们的上一个管理员在两年前因为没有文档而辞职?

,“editable”:false,“type”:“text/html”},“subject”:为什么一个GabeDeadu用户显示他的管理员是一个域名而不是一个名字或电子邮件帐户?“,”类型“:”讨论“},{“内容”:{文本”:“启动FB数据科学大学将在旧金山、CA和云技术开发人员推出,因为个人或公司可以是没有资金的启动技术大学的合作伙伴”,“可编辑”:假“类型”:文本/ HTML“},“主题”:“启动FB数据科学大学将在旧金山、CA和云技术开发人员……”,“类型”:“内容”:{“文本”:“可编辑”:“false”,“类型”:“文本/HTML”},“主题”:“GCI伙伴项目计划-模板”,“类型”:“文件”},{“内容”:{“文本”:“无法访问培训和160;谷歌云销售凭证”“,”可编辑“:false,“type:”text/html“},“subject:”无法访问谷歌云销售培训凭证“,”type:”update“},“{”content:“{”text:”我对ie-Example.Com和Example.Com的大写字母混淆有问题。因此,我的主要帐户混淆。感谢阅读。“,”可编辑“:false,“type:”text/html“},“subject:”“我遇到大写字母混淆的问题,例如-Example.Com和Example.Com。我的专业是…”,“键入”:“更新”},{“内容”:{“文本”:“或者我如何知道谁是管理员?如果他们不再有任何IT管理员,而他们的上一个管理员在两年前因为没有文档而辞职?

”,“可编辑”:false,“键入”:“text/html”},“主题”:”为什么一个GabeDeadu用户显示他的管理员是一个域名而不是一个名字或电子邮件帐户?“,”类型“:”讨论“},{“内容”:{文本”:“启动FB数据科学大学将在旧金山、CA和云技术开发人员推出,因为个人或公司可以是没有资金的启动技术大学的合作伙伴”,“可编辑”:假“类型”:文本/ HTML“},“主题”:“启动FB数据科学大学将推出在旧金山,CA和云技术开发人员……”,“类型”:“更新”}。 在[未知函数]([未知文件]:5:22) 在[未知函数]([未知文件]:18:3) 在多吉特(代码:2:53)
以前有人看到过吗?你能给我指一下关于如何继续的文档吗?

发生了什么? 在
Page.html
文件中,您正在使用
include()
函数将数据插入html模板

问题在于,数据本身(从API获取)包含HTML标记,这些标记与预先存在的HTML代码冲突,从而导致“格式错误的HTML内容”异常

解决方案 为了解决此问题,您应该对要插入到HTML模板中的数据使用。请参阅以下可能的解决方案:

代码.gs

function doGet(request) { 
  return HtmlService.createTemplateFromFile('Page').evaluate().setSandboxMode(HtmlService.SandboxMode.IFRAME);
}

function include(filename) { 
  var finalRequest = UrlFetchApp.fetch('https://www.cloudconnect.xxx....');

  var data = finalRequest.toString().replace("throw 'allowIllegalResourceCall is false.';", "").trim(); 

  data = JSON.parse(data);

  var returnData = [];

  for(var i in data){
    if(i == "list"){
     var content = data[i];
    }
    for(var i in content){
     var text = content[i];
      var json_string = JSON.stringify(text).replace(/[&]/g, "and");
      returnData.push(json_string);
    }
  }
  return returnData;
}
函数doGet(请求){
返回HtmlService.createTemplateFromFile('Page').evaluate().setSandboxMode(HtmlService.SandboxMode.IFRAME);
}
函数包括(文件名){
var finalRequest=UrlFetchApp.fetch('https://www.cloudconnect.xxx....');
var data=finalRequest.toString().replace(“throw'allowIllegalResourceCall为false”。;”,“”)。trim();
data=JSON.parse(数据);
var returnData=[];
用于(数据中的var i){
如果(i==“列表”){
var内容=数据[i];
}
对于(内容中的var i){
var text=内容[i];
var json_string=json.stringify(text).replace(/[&]/g,“and”);
push(json_字符串);
}
}
返回escapeHtml(返回数据);
}
变量entityMap={
“&”:“&;”,
'': '',
'"': '"',
"'": ''',
“/”:“/;”,
“`:”`;”,
“=”:“=;”
};
函数escapeHtml(字符串){
返回字符串。替换(/[&“`=\/]/g,函数{
返回entityMap[s];
});
}
修改
  • 添加了
    escapeHtml
    函数,该函数可用于转义作为参数传递的字符串中的HTML字符
  • 添加了
    entityMap
    变量,该变量由
    escapeHtml
    函数用于转义/翻译字符
  • 修改了
    include()
    函数的
    return
    语句。它不再返回字符串本身,而是返回字符串的转义版本

Hello@BabiMaji,您能提供引发此错误的代码吗?这样我们就更容易解决您的问题。谢谢你好@carlesgg97。。。刚刚更新了en