1

Azure Blob StorageにTIFファイルがあります。スプレッドシートに埋め込まれたリンクを介してブラウザに表示したいと思います。これを行う最も簡単な方法は、ファイルコードをリクエストパラメータとして受け取り、正しくフォーマットされたHTMLを返すことです。Azure Serverless機能付きHTMLを返すreq.body

だから私はreq.bodyをHTMLで返すようになっています。残念ながら、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

パーフェクト、ありがとう! –

関連する問題