Я создаю функцию Azure, которая возвращает частичный ответ (используя await response.WriteAsync(...)
).Когда я открываю URL-адрес функции Azure в Chrome, я получаю сообщение об ошибке: Chunked: 1 GET http://localhost:7071/api/Chunked net :: ERR_INCOMPLETE_CHUNKED_ENCODING 200 (OK)
Эта ошибка возникает в большинстве случаев, ноиногда я получаю правильный результат.Однако когда я открываю тот же URL-адрес из Edge, ответ всегда загружается правильно.Я запускаю код локально из Visual Studio 15.8.7, Function Runtime Version: 2.0.12134.0,
Я создал минимальное repro:
[FunctionName("Chunked")]
public static async Task Run(
[HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
log.LogInformation("C# HTTP trigger function processed a request.");
var res = req.HttpContext.Response;
res.StatusCode = 200;
var token = " Lorem ipsum ";
await res.WriteAsync(token);
for (int i = 0; i < 100; i++)
{
token += token;
if (token.Length > 2000)
token = " Lorem ipsum ";
await res.WriteAsync(i + token + "\n");
await Task.Delay(10); // Simulate wait for another record
}
}
Мой код более сложный, потому что ончитает содержимое из базы данных, но я имитировал его с помощью Task.Delay.