Aws-lambda-dotnet: Comportamento diferente de Amazon.Lambda.AspNetCoreServer no local e AWS

Criado em 28 fev. 2018  ·  7Comentários  ·  Fonte: aws/aws-lambda-dotnet

Olá equipe AWS,

Há algum problema com sua implementação do LambdaEntryPoint, o comportamento é diferente do que está em LocalEntryPoint. Para recriar este caso, você precisa fazer CustomAttribute:

`` `
public class CustomAttribute: ActionFilterAttribute
{
public override void OnActionExecuted (ActionExecutedContext actionExecutedContext)
{
Resposta de HttpResponse = actionExecutedContext.HttpContext.Response;
LambdaLogger.Log ("Test" + response.StatusCode + "" + (response! = Null) .ToString () + "" +
response.IsSuccessStatusCode (). ToString () + "" + (actionExecutedContext.Result! = null) .ToString ());

        base.OnActionExecuted(actionExecutedContext);
    }
}

`` `

Se você testar este CustomAttribute com localEntry, verá que StatusCode está definido, mas quando você depurar isso na AWS, obterá 0 porque algo funciona em ordem diferente. Investigo esse problema com a equipe OData aqui: OData / WebApi # 1227

A bug modullambda-client-lib queued

Comentários muito úteis

@normj Algum plano para consertar isso?

Todos 7 comentários

Consegui reproduzir o problema, mas ainda não sei por que está acontecendo, mas continuarei investigando.

Alguma novidade neste tópico?

@normj , também estou tendo um problema semelhante com este filtro de ação personalizada

using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Filters;

namespace Infrastructure
{
    public class ValidateModelAttribute : ActionFilterAttribute, IOrderedFilter
    {
        public ValidateModelAttribute()
        {
            Order = 100;
        }
        public override void OnActionExecuting(ActionExecutingContext context)
        {
            if (!context.ModelState.IsValid)
            {
                context.Result = new BadRequestObjectResult(context.ModelState);
            }
        }
    }
}

Funciona bem localmente e retorna erros de validação e encerra a solicitação, mas não é executado quando implantado no AWS Lambda.

Este bug ainda ocorre, existe algum plano para repará-lo?

@normj Algum plano para consertar isso?

Quais são as novidades sobre isso? Já se passou mais de um ano desde que o último comentário foi adicionado. @ NGL321 , você pode fornecer uma atualização?

Ei @julealgon ,

Desculpe pelo rótulo e pronto. No momento, estamos cientes desse bug e planejamos corrigi-lo, mas infelizmente não posso fornecer um cronograma mais concreto no momento, pois ele não está no plano de correção imediata.
Se isso estiver bloqueando, você está convidado a enviar uma solicitação pull para corrigir e iremos analisá-la assim que possível. Em alternativa, continue a bater nisto e vou garantir que recebe atenção o mais rapidamente possível (quanto mais pessoas solicitarem uma correção, mais alto poderemos movê-la nas nossas prioridades) 😉

😸 😷

Esta página foi útil?
0 / 5 - 0 avaliações