将 Excel 转换为 HTML

Aspose.Cells Cloud 提供了一个功能强大的 REST 端点,可将 Excel 工作簿(XLS、XLSX、CSV 等)转换为 HTML 文档。该操作将返回一个 FileInfo 对象,其中包含生成的 HTML 文件(文件名、大小和 Base64 编码的内容)。


前提条件

要求 满足方式
Aspose Cloud 账户 aspose.cloud 注册账户。
JWT 访问令牌 通过 OAuth 2.0 的 POST /connect/token 端点获取承载令牌(bearer token)。
存储(可选) 如果希望 API 从特定存储读取或写入文件,请先创建该存储(例如 Amazon S3、Azure Blob 或 Aspose Cloud 存储)。
cURL / SDK 任意支持 multipart/form-data 的 HTTP 客户端(如 cURL、Postman 或 Aspose.Cells SDK)。

身份验证

所有 Aspose.Cells Cloud 请求均需使用 JWT 令牌身份验证

Authorization: Bearer <access-token>

令牌必须包含在每个请求的 Authorization 请求头中。


端点

POST https://api.aspose.cloud/v3.0/cells/convert/html

注意:请求必须以 multipart/form-data 格式发送。Excel 文件必须作为 multipart 正文的第一个部分提供。


安全与身份验证

Aspose.Cells Cloud API 是安全的,需使用 JWT 令牌身份验证

请求参数

查询参数

名称 类型 必填 默认值 描述
password string 打开受保护工作簿所需的密码。
storageName string 源文件所在存储的名称。
checkExcelRestriction boolean true 设置为 true 时,服务将验证 Excel 特定限制(例如受保护工作表)。
region string 工作簿的区域设置(例如 zh-CN)。
FontsLocation string 包含渲染所需自定义字体的文件夹 URL 或路径。

表单数据(multipart)

名称 类型 必填 描述
File file 要转换的 Excel 工作簿。必须作为 multipart 请求的第一个部分提供。

请求示例(cURL)

curl -X POST "https://api.aspose.cloud/v3.0/cells/convert/html?checkExcelRestriction=true" \
     -H "accept: multipart/form-data" \
     -H "Authorization: Bearer <access-token>" \
     -H "Content-Type: multipart/form-data" \
     -F "File=@/path/to/your_workbook.xlsx"

成功响应

状态码: 200 OK

字段 类型 描述
Filename string 生成的 HTML 文件名(例如 example.html)。
FileSize int HTML 文件大小(单位:字节)。
FileContent string Base64 编码的 HTML 内容。
{
  "Filename": "example.html",
  "FileSize": 12345,
  "FileContent": "base64_encoded_string"
}

响应结构由 FileInfo 模型定义:/cells/file-info


错误响应

状态码 含义 示例载荷
400 请求无效 – 缺少或无效的参数 json { "Code": "BadRequest", "Message": "必须提供 'File' 部分。" }
401 未授权 – 无效或缺失的 JWT 令牌 json { "Code": "InvalidToken", "Message": "访问令牌缺失或已过期。" }
404 未找到 – 在指定存储中未找到源文件 json { "Code": "FileNotFound", "Message": "文件 'my.xlsx' 不存在于存储 'MyStorage' 中。" }
413 载荷过大 – 上传的文件超过允许的大小 json { "Code": "RequestEntityTooLarge", "Message": "上传的文件超过 100 MB 限制。" }
429 请求过多 – 超出速率限制 json { "Code": "TooManyRequests", "Message": "超出每分钟 60 次调用的速率限制。" }
500 服务器内部错误 – 意外服务器条件 json { "Code": "InternalError", "Message": "发生意外错误。请稍后重试。" }

速率限制

限制项 描述
每账户每分钟 60 个请求(默认) 超出限制将返回 429 Too Many Requests。请调整客户端逻辑,或通过 Aspose Cloud 门户申请更高配额。

SDK 支持

Aspose 提供了针对多种编程语言的官方 SDK,封装了该端点的功能。以下示例展示了使用官方 SDK 实现相同转换的方式。

语言 示例
C#
查看示例csharp\nusing Aspose.Cells.Cloud.SDK.Api;\nusing Aspose.Cells.Cloud.SDK.Model;\n\nvar apiInstance = new ConversionApi();\nvar file = File.ReadAllBytes("your.xlsx");\nvar result = apiInstance.PostConvertWorkbookToHtml(file, password: null, checkExcelRestriction: true);\nConsole.WriteLine(result.Filename);\n
Java
查看示例java\nConversionApi api = new ConversionApi();\nFile file = new File("your.xlsx");\nFileInfo info = api.postConvertWorkbookToHtml(file, null, true);\nSystem.out.println(info.getFilename());\n
Python
查看示例python\nfrom asposecellscloud import ConversionApi\napi = ConversionApi()\nwith open('your.xlsx', 'rb') as f:\n file_info = api.post_convert_workbook_to_html(file=f.read())\nprint(file_info.filename)\n
Node.js
查看示例javascript\nconst { ConversionApi } = require('asposecellscloud');\nconst api = new ConversionApi();\nconst fs = require('fs');\napi.postConvertWorkbookToHtml({ File: fs.createReadStream('your.xlsx') })\n .then(info => console.log(info.Filename));\n
Go
查看示例go\nimport (\n "asposecellscloud"\n "os"\n)\nfunc main() {\n api := asposecellscloud.NewConversionApi()\n f, _ := os.Open("your.xlsx")\n info, _ := api.PostConvertWorkbookToHtml(f, nil, true)\n fmt.Println(info.Filename)\n}\n
PHP
查看示例php\nuse Aspose\Cells\ConversionApi;\n$api = new ConversionApi();\n$file = fopen('your.xlsx', 'r');\n$info = $api->postConvertWorkbookToHtml($file);\necho $info->getFilename();\n
Ruby
查看示例ruby\nrequire 'aspose_cells_cloud'\napi = AsposeCellsCloud::ConversionApi.new\nfile = File.open('your.xlsx')\ninfo = api.post_convert_workbook_to_html(file: file)\nputs info.filename\n
Perl
查看示例perl\nuse Aspose::Cells::ConversionApi;\nmy $api = Aspose::Cells::ConversionApi->new();\nopen my $fh, '<', 'your.xlsx' or die $!;\nmy $info = $api->post_convert_workbook_to_html(file => $fh);\nprint $info->{Filename};\n

有关支持的 SDK 完整列表和安装说明,请参阅 Aspose.Cells Cloud SDKs 仓库:https://github.com/aspose-cells-cloud


相关端点

端点 描述
POST /cells/{name}/saveAs 将现有 Excel 文件直接另存为 HTML(或其他格式)至存储中。
PUT /cells/convert 转换工作簿为 HTML 并提供额外的转换选项;结果将返回于响应体中。
GET /cells/{name} 检索已存储为 HTML(或其他格式)的工作簿,支持可选查询参数。

常见问题

问: 调用 Excel 转 HTML 转换 API 时如何进行身份验证?
答: 在请求中包含 Authorization: Bearer <access-token> 请求头,令牌需从 OAuth 2.0 /connect/token 端点获取。

问: FileInfo 响应包含哪些内容?
答: 三个字段:Filename(字符串)、FileSize(整数,单位:字节)和 FileContent(Base64 编码的 HTML 内容)。

问: 可能遇到哪些错误代码?
答: 400(请求无效)、401(未授权)、404(文件未找到)、413(载荷过大)、429(请求过多)、500(服务器内部错误)。每种错误均返回包含 CodeMessage 字段的 JSON 载荷。

问: 是否可以指定自定义字体位置?
答: 是的。使用 FontsLocation 查询参数指向包含所需字体的文件夹或 URL。

问: 此操作是否存在速率限制?
答: 默认限制为 每账户每分钟 60 次调用。超出限制将返回 429 Too Many Requests


JSON-LD 面包屑导航(结构化数据)

添加此代码块可提升 SEO,使搜索结果中显示富片段面包屑导航。

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    { "@type": "ListItem", "position": 1, "name": "首页", "item": "https://docs.aspose.cloud/" },
    { "@type": "ListItem", "position": 2, "name": "开发者中心", "item": "https://docs.aspose.cloud/cells/" },
    { "@type": "ListItem", "position": 3, "name": "转换", "item": "https://docs.aspose.cloud/cells/conversion/" },
    { "@type": "ListItem", "position": 4, "name": "Excel 转 HTML", "item": "https://docs.aspose.cloud/cells/convert-excel-file-to-html-file/" }
  ]
}
</script>

变更日志

版本 日期 变更内容
v3.0 2024-10-01 初始公开发布 PostConvertWorkbookToHtml
v3.1 2025-04-15 新增 regionFontsLocation 查询参数;更新错误载荷格式。
v3.2 2026-03-20 引入速率限制文档和示例错误响应。

如需进一步帮助,请联系 Aspose 支持或访问官方 API 参考文档: https://reference.aspose.cloud/cells/#/Conversion/PostConvertWorkbookToHtml