Извлечь промежуточное ПО запроса в пустельке, возвращающей net :: ERR_INCOMPLETE_CHUNKED_ENCODING - PullRequest
0 голосов
/ 18 марта 2019

Я пытаюсь устранить две ошибки в промежуточном программном обеспечении kestrel, которое предназначено для обработки запроса на выборку и возврата некоторого JSON. (Я не заинтересован в использовании MVC)

Код работает, но я хотел бы удалить эти две ошибки:

В хроме я получаю эту ошибку:

net :: ERR_INCOMPLETE_CHUNKED_ENCODING 200 (ОК)

В kestrel я получаю эту ошибку:

"код состояния не может быть установлен, потому что ответ уже начался"

        public void Configure(
            IApplicationBuilder app,
            IHostingEnvironment env,
            ILoggerFactory loggerFactory)
            {
    // some startup stuff...

        app.Use(async (context, next) =>
                {
                    if (context.Request.Path.HasValue && context.Request.Path.Value.Contains("searchjsfetch/"))
                    {
                        await context.Response.WriteAsync(JsonConvert.SerializeObject(simpleObject), Encoding.UTF8);
                    }
    })
}

В машинописном тексте я получаю так:

fetch(`${hostDomain}searchjsfetch/${email}/2/3`)
                    .then((response) => {
                    response.body.getReader().read().then((c) => {
                            return new TextDecoder("utf-8").decode(c.value);
                        });
                    })

Ответы [ 2 ]

0 голосов
/ 19 марта 2019

Ну, это было глупо, у меня был дополнительный

await next();

, который вызвал проблемы

0 голосов
/ 18 марта 2019

В ASP.NET Core вы будете «использовать MVC» (например, в своем файле startup.cs), но это не значит, что вы должны использовать MVC (представления и т. Д.) ... Вы будете использовать MVC пространства имен и т. д., но вы все равно можете возвращать данные JSON. Есть пара классов, которые нацелены на API, а не на традиционный ответ представления MVC -

Первым будет ControllerBase - https://docs.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.mvc.controllerbase?view=aspnetcore-2.2

Вторым классом, который может представлять интерес, будет ApiControllerAttribute class

Взгляните на эту статью - https://docs.microsoft.com/en-us/aspnet/core/web-api/?view=aspnetcore-2.2

...