我在 Azure 无服务器中编写了一个 PowerShell 脚本,它返回一些 html
当使用Firefox或Chrome的脚本时,传输的html文档按预期在浏览器中打开,但是当使用微软的浏览器Edge或Internet Explorer时,传输的html文档被下载为文件,这绝对不是我们想要的.
我尝试修改内容配置但没有成功。
我应该在脚本中修改什么才能让 IE 和 Edge 正确显示 html 内容?
这里是制作 html 文档的部分代码。
foreach ($container in $containers | Sort-Object -Property Name -Descending )
{
$uri = "list?name=$($container.Name)"
$HTML += "<li><a href=`"$($uri)`">$($container.Name)</a></li>"+ "`r`n"
}
$HTML += "</ul>"+ "`r`n"
$HTML += " </body></html>"
$status = [HttpStatusCode]::OK
$body = $HTML
# Associate values to output bindings by calling 'Push-OutputBinding'.
Push-OutputBinding -Name Response -Value ([HttpResponseContext]@{
StatusCode = $status
Body = $body
headers = @{'content-type'='text\html'}
})
最佳答案
问题似乎出在标题
我更改了标题
@{'content-type'='text\html'}
到
headers = @{'content-type'='text/html'}
现在它可以正确显示,感谢 @John Hanley 提到“验证”,因为 validator.w3.org 提示 header 拒绝解析文档
关于html - azure 上的无服务器 PowerShell 脚本返回 html 以在浏览器中显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59827671/