Member 10419297 Ответов: 1

Как вернуть HTML-код из web api


Всем Привет,

я хочу вернуть HTML-код от веб-API с помощью ihttpactionresult с


общественные ihttpactionresult с вам()
{
строку папку = свойство HttpContext.Тока.Запрос.MapPath(@"~/Template1/Receipt1.html");
строка Html = файл.ReadAllText(Путь К Файлу);
StringBuilder sb = новый StringBuilder(Html);

// какой код я должен написать здесь
возврат ОК();
}

Что я уже пробовал:

я уже сделал это

public HttpResponseMessage Get()
{
строку папку = свойство HttpContext.Тока.Запрос.MapPath(@"~/Template1/Receipt1.html");
строка Html = файл.ReadAllText(Путь К Файлу);
StringBuilder sb = новый StringBuilder(Html);
var response = new HttpResponseMessage();
ответ.Content = new StringContent(sb.ToString());
ответ.Содержание.Заголовки.ContentType = new MediaTypeHeaderValue("text/html");
ответ.ReasonPhrase = "успех";
ответная реакция;
}

вышеизложенное работает нормально, но я хочу использовать IHttpActionResult

общественные ihttpactionresult с вам()
{
строку папку = свойство HttpContext.Тока.Запрос.MapPath(@"~/Template1/Receipt1.html");
строка Html = файл.ReadAllText(Путь К Файлу);
StringBuilder sb = новый StringBuilder(Html);

// какой код я должен написать здесь
возврат ОК();
}

Nathan Minier

Мой совет? Никогда так не делай.

Весь смысл использования веб-сервиса заключается в предоставлении кратких, доступных только для данных ответов произвольному клиенту. Ваш веб-сервис не должен знать, какой клиент его использует, поэтому отправка отформатированного HTML мгновенно нарушает эту концепцию. Отправляйте необработанные данные и форматируйте их на стороне клиента.

F-ES Sitecore

Посмотрите здесь возможные решения

https://docs.microsoft.com/en-us/aspnet/web-api/overview/getting-started-with-aspnet-web-api/action-results

Однако, как уже было предложено, то, что вы делаете, нарушает всю концепцию веб-API.