2

我在 Azure Blob 存储中有一些 TIF 文件。我想通过嵌入在电子表格中的链接在浏览器中显示它们。最简单的方法应该是将文件代码作为请求参数并返回格式正确的 HTML,对吗?

所以现在我让它返回一个带有一些 HTML 的 req.body。不幸的是,HTML 只是在浏览器中显示为字符串。如何使用最少的 rigamarole 使其呈现为 HTML?

这是我的代码:

if (req.query.blob) {
    let blob = req.query.blob;
    context.res = {
        // status: 200, /* Defaults to 200 */
        body: `<object width=200 height=200 
                data="<baseaddress>/${blob}.tif" type="image/tiff">
                <param name="src" value="<baseaddress>/${blob}.tif">
                <param name="negative" value="yes">
                </object>`
    };
}
4

1 回答 1

3

您需要设置标头以将内容类型指定为 HTML,并且响应必须是完整有效的 HTML 页面(带有<html>标记和其余部分)。

示例

module.exports.hello = (event, context, callback) => {

  const html = `
    <!doctype html>
    <html>
      <head>
        <title>The Page Title</title>
      </head>
      <body>
        <h1>Hello</h1>
      </body>
    </html>`;

  const response = {    
    statusCode: 200, 
    headers: {
      'Content-Type': 'text/html'
    }, 
    body: html
  };

  callback(null, response);
};
于 2017-06-14T13:47:42.847 回答