你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Microsoft.Common.FileUpload UI 元素

一个允许用户指定要上传的一个或多个文件的控件。

UI 示例

Azure 门户中的 Microsoft.Common.FileUpload UI 元素的屏幕截图。

架构

{
  "name": "element1",
  "type": "Microsoft.Common.FileUpload",
  "label": "Some file upload",
  "toolTip": "",
  "constraints": {
    "required": true,
    "accept": ".doc,.docx,.xml,application/msword"
  },
  "options": {
    "multiple": false,
    "uploadMode": "file",
    "openMode": "text",
    "encoding": "UTF-8"
  },
  "visible": true
}

示例输出

如果是options.multiple并且options.uploadModefalsefile,则输出将文件的内容作为 JSON 字符串:

"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."

true如果是options.multipleoptions.uploadModefile,则输出将文件的内容作为 JSON 数组:

[
  "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.",
  "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.",
  "Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.",
  "Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
]

如果是options.multipleoptions.uploadModefalseurl,则输出的 URL 为 JSON 字符串:

"https://contoso.blob.core.windows.net/pictures/profile.jpg?sv=2013-08-15&st=2013-08-16&se=2013-08-17&sr=c&sp=r&rscd=file;%20attachment&rsct=binary &sig=YWJjZGVmZw%3d%3d&sig=a39%2BYozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ%3d"

如果是options.multipleoptions.uploadModetrueurl,则输出包含 JSON 数组形式的 URL 列表:

[
  "https://contoso.blob.core.windows.net/pictures/profile1.jpg?sv=2013-08-15&st=2013-08-16&se=2013-08-17&sr=c&sp=r&rscd=file;%20attachment&rsct=binary &sig=YWJjZGVmZw%3d%3d&sig=a39%2BYozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ%3d",
  "https://contoso.blob.core.windows.net/pictures/profile2.jpg?sv=2013-08-15&st=2013-08-16&se=2013-08-17&sr=c&sp=r&rscd=file;%20attachment&rsct=binary &sig=YWJjZGVmZw%3d%3d&sig=a39%2BYozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ%3d",
  "https://contoso.blob.core.windows.net/pictures/profile3.jpg?sv=2013-08-15&st=2013-08-16&se=2013-08-17&sr=c&sp=r&rscd=file;%20attachment&rsct=binary &sig=YWJjZGVmZw%3d%3d&sig=a39%2BYozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ%3d"
]

测试 CreateUiDefinition.json时,某些浏览器会截断浏览器控制台中元素生成的 Microsoft.Common.FileUpload URL。 可能需要右键单击单个链接以复制完整 URL。

注解

  • constraints.accept 指定在浏览器的文件对话框中显示的文件类型。 有关允许的值,请参阅 HTML5 规范。 默认值为 null
  • 如果 options.multiple 设置为 true,则允许用户在浏览器的文件对话框中选择多个文件。 默认值为 false
  • 此元素支持基于 options.uploadMode 的值以两种模式上传文件。 如果 file 指定,则输出将文件的内容作为 blob。 如果 url 已指定,则文件将上传到临时位置,并且输出具有 blob 的 URL。 临时 blob 在 24 小时后会被清除。 默认值为 file
  • 上传的文件受到保护。 输出 URL 包括用于在部署期间访问文件的 SAS 令牌
  • options.openMode 的值决定了如何读取文件。 如果文件应为纯文本, text 则指定否则指定 binary。 默认值为 text
  • 如果 options.uploadMode 设置为 fileoptions.openMode 设置为 binary,则输出为 base64 编码。
  • options.encoding 指定在读取文件时要使用的编码。 默认值为UTF-8,仅在设置为 text 时才options.openMode使用。

后续步骤