在UrlFetchApp.fetch(...)中使用变量不起作用

时间:2019-07-23 15:24:05

标签: google-apps-script

我想使用Google App脚本让Telegram Bot在聊天中发布消息。当我使用以下代码行时,效果很好:

var message = UrlFetchApp.fetch(url + "/sendMessage?chat_id=" + chat_id_Testgruppe + "&text=HelloWorld");

但是如果我用这样的变量替换“ HelloWorld”:

var body = threads[i].getMessages().pop().getPlainBody();  // Gets the message-String from a Gmail-Thread
var message = UrlFetchApp.fetch(url + "/sendMessage?chat_id=" + chat_id_Testgruppe + "&text=" + body);

然后,即使我将其复制并粘贴到浏览器中,该参数仍然有效(即使显示为fetch函数的非法参数),我仍然收到无效的Argument错误。

2 个答案:

答案 0 :(得分:0)

3.3.3 Message Body Length指定getMessages()返回消息的 LIST -这是一个数组。您需要访问一条消息(列表的数组项)才能以字符串形式获取其内容。

答案 1 :(得分:0)

我需要在变量上使用encodeURIComponent(),以解决问题。