Серверный сценарий PowerShell на azure для возврата html для отображения в браузере - PullRequest
1 голос
/ 20 января 2020

Я написал сценарий powershell в Azure без обслуживания, который возвращает html

при использовании сценария из Firefox или Chrome, переданный документ html открывается в браузере как и ожидалось, но при использовании обозревателей Microsoft Edge или Inte rnet Explorer переданный документ html загружается в виде файла, который совершенно не тот, что мы хотим.

Я пытался изменить расположение содержимого без success.

Что я должен изменить в сценарии, чтобы получить 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'}
})

Ответы [ 2 ]

2 голосов
/ 21 января 2020

Кажется, проблема в заголовке

Я изменил заголовки с

@{'content-type'='text\html'} 

на

headers = @{'content-type'='text/html'}

и теперь он отображается правильно, благодаря @John Hanley за упоминание 'validation' как validator.w3.org жаловался на то, что заголовок отказывается анализировать документ

0 голосов
/ 20 января 2020

Кажется, что настройка в вашем локальном браузере не является проблемой кодирования. Вам нужно изменить настройки браузера, чтобы решить эту проблему:

{ ссылка }

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...