javascript - 使用 Azure 无服务器函数 req.body 返回 HTML

标签 javascript node.js azure serverless-framework serverless-architecture

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

所以现在我已经得到它返回一个带有一些 HTML 的 req.body 。不幸的是,HTML 在浏览器中仅显示为字符串。如何使其以最少的繁文缛节呈现为 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>`
    };
}

最佳答案

您需要设置 header 以将内容类型指定为 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);
};

关于javascript - 使用 Azure 无服务器函数 req.body 返回 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44545847/

相关文章:

Azure Blob 存储和 HDF 文件存储

javascript - 从 JQuery 的 get 请求转换为 Vue.js

javascript - 嵌套对象中的 ES6 默认参数

javascript - 如果 React 组件需要 jQuery,Enzyme 会抛出错误

azure - 使用 Azure AD 验证计算机

azure - 我们可以在发布管道 - Azure devOps 中发布工件吗?

javascript - 使下一个按钮从当前 "number"继续

javascript - CSS 中的 Canvas 宽度看起来很糟糕并且与 javascript 代码不符

node.js - 我可以从 node.js 设置 ulimit 吗?

javascript - 压缩和调整用户上传的图像