1

Ich habe einige TIF-Dateien in Azure Blob Storage. Ich möchte sie im Browser über einen Link anzeigen, der in eine Tabelle eingebettet ist. Der einfachste Weg, dies zu tun, sollte sein, den Dateicode als Anfrageparameter zu nehmen und das richtig formatierte HTML zurückzugeben, nicht wahr?HTML mit Azure Serverless-Funktion zurückgeben req.body

Also jetzt habe ich es eine req.body mit etwas HTML zurückgeben. Leider wird der HTML-Code nur als Zeichenfolge im Browser angezeigt. Wie mache ich es als HTML mit minimaler Rigamarole rendern?

Hier ist mein Code:

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

Wie ich verstehe, das HTML-Ergebnis wird als iFrame Ihrer Haupt-Seite verwendet werden, nicht wahr? – Zanon

Antwort

1

Sie müssen die Header, um den Inhaltstyp in HTML und die Antwort eine voll gültige HTML-Seite muss angeben (mit dem <html>-Tag und dem Rest).

Beispiel:

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

Dieses Beispiel wurde auf AWS getestet, aber ich glaube, dass es Azure entspricht. – Zanon

+0

Perfekt, danke! –