1

我在Azure Blob存储中有一些TIF文件。我想通过嵌入电子表格的链接在浏览器中显示它们。最简单的方法应该是将文件代码作为请求参数并返回格式正确的HTML,对吧?使用Azure无服务器功能返回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>` 
    }; 
} 
+0

据我了解,这个HTML结果将作为您的主网页的iframe,对不对? – Zanon

回答

1

您需要设置标题指定内容类型为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); 
}; 
+0

本示例已在AWS上进行了测试,但我相信它将等同于Azure。 – Zanon

+0

完美,谢谢! –

相关问题