Gmail 中的附件。这是一个常规 Blob,但它有一个额外的 getSize() 方法,该方法比调用
getBytes().length 更快,并且不会计入 Gmail 读取配额。
// Logs information about any attachments in the first 100 inbox threads. const threads = GmailApp.getInboxThreads(0, 100); const msgs = GmailApp.getMessagesForThreads(threads); for (let i = 0; i < msgs.length; i++) { for (let j = 0; j < msgs[i].length; j++) { const attachments = msgs[i][j].getAttachments(); for (let k = 0; k < attachments.length; k++) { Logger.log( 'Message "%s" contains the attachment "%s" (%s bytes)', msgs[i][j].getSubject(), attachments[k].getName(), attachments[k].getSize(), ); } } }
方法
| 方法 | 返回值类型 | 简介 |
|---|---|---|
copy | Blob | 返回此 blob 的副本。 |
get | Blob | 以转换为指定内容类型的 blob 形式返回此对象内的数据。 |
get | Byte[] | 获取此 blob 中存储的数据。 |
get | String|null | 获取此 blob 中字节的内容类型。 |
get | String | 以 UTF-8 编码的字符串形式获取此 blob 的数据。 |
get | String | 以指定编码的字符串形式获取此 blob 的数据。 |
get | String | 获取此附件的 SHA1 内容哈希。 |
get | String|null | 获取此 blob 的名称。 |
get | Integer | 获取此附件的大小。 |
is | Boolean | 返回此 blob 是否为 Google Workspace 文件(表格、文档等)。 |
set | Blob | 设置此 blob 中存储的数据。 |
set | Blob | 设置此 blob 中字节的内容类型。 |
set | Blob | 根据文件扩展名设置此 blob 中字节的内容类型。 |
set | Blob | 根据采用 UTF-8 编码的字符串设置此 blob 的数据。 |
set | Blob | 根据采用指定编码的字符串设置此 blob 的数据。 |
set | Blob | 设置此 blob 的名称。 |
详细文档
copyBlob()
getAs(contentType)
以转换为指定内容类型的 blob 形式返回此对象内的数据。此方法会将适当的扩展名添加到文件名中,例如“myfile.pdf”。不过,它假定文件名中最后一个句点(如果有)后面的部分是应替换的现有扩展名。因此,“ShoppingList.12.25.2014”会变为“ShoppingList.12.25.pdf”。
如需查看转换的每日配额,请参阅 Google 服务的配额。新创建的 Google Workspace 网域可能会暂时受到更严格的配额限制。
参数
| 名称 | 类型 | 说明 |
|---|---|---|
content | String | 要转换成的 MIME 类型。对于大多数 blob,'application/pdf' 是
唯一有效的选项。对于 BMP、GIF、JPEG 或 PNG 格式的图片,'image/bmp'、'image/gif'、'image/jpeg' 或 'image/png' 中的任何一个也都是
有效的。对于 Google 文档,'text/markdown' 也是有效的。 |
返回
Blob - 以 blob 形式呈现的数据。
getBytes()
获取此 blob 中存储的数据。
返回
Byte[] - 存储的字节。
getContentType()
获取此 blob 中字节的内容类型。
返回
String|null - 此数据的内容类型(如果已知),否则为 null。
getDataAsString()
以 UTF-8 编码的字符串形式获取此 blob 的数据。
返回
String - 以字符串形式呈现的数据。
getDataAsString(charset)
以指定编码的字符串形式获取此 blob 的数据。
参数
| 名称 | 类型 | 说明 |
|---|---|---|
charset | String | 将此 blob 中的数据编码为字符串时要使用的字符集。 |
返回
String - 以字符串形式呈现的数据。
getHash()
获取此附件的 SHA1 内容哈希。此方法不会计入 Gmail 读取配额。
返回
String - 以字符串形式呈现的 SHA1 内容哈希。
授权
使用此方法的脚本需要使用以下一个或多个 范围 或 相关 REST API 中的适当范围进行授权:
-
https://mail.google.com/
getName()
获取此 blob 的名称。
返回
String|null - 此数据的名称(如果已知),否则为 null。
getSize()
获取此附件的大小。此方法比调用 getBytes().length 更快,并且不会计入 Gmail 读取配额。
返回
Integer - 附件的大小(以字节为单位)。
授权
使用此方法的脚本需要使用以下一个或多个 范围 或 相关 REST API 中的适当范围进行授权:
-
https://mail.google.com/
isGoogleType()
返回此 blob 是否为 Google Workspace 文件(表格、文档等)。
返回
Boolean - 如果此 blob 是 Google Workspace 文件,则为 true;否则为 false。
setBytes(data)
setContentType(contentType)
setContentTypeFromExtension()
setDataFromString(string)
setDataFromString(string, charset)
根据采用指定编码的字符串设置此 blob 的数据。
参数
| 名称 | 类型 | 说明 |
|---|---|---|
string | String | 字符串数据。 |
charset | String | 将字符串解析为字节时要使用的字符集。 |
返回
Blob - 此 blob,用于链式调用。