Aws-lambda-dotnet: Perilaku berbeda Amazon.Lambda.AspNetCoreServer di lokal dan AWS

Dibuat pada 28 Feb 2018  ·  7Komentar  ·  Sumber: aws/aws-lambda-dotnet

Halo Tim AWS,

Ada beberapa masalah dengan penerapan LambdaEntryPoint Anda, perilakunya berbeda dari yang terjadi di LocalEntryPoint. Untuk membuat ulang kasus ini, Anda perlu membuat CustomAttribute:

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

        base.OnActionExecuted(actionExecutedContext);
    }
}

``

Jika Anda menguji CustomAttribute ini dengan localEntry, Anda akan melihat bahwa StatusCode disetel, tetapi saat Anda men-debug ini di AWS, Anda akan mendapatkan 0 karena sesuatu berfungsi dalam urutan yang berbeda. Saya menyelidiki masalah ini dengan tim OData di sini: OData / WebApi # 1227

A bug modullambda-client-lib queued

Komentar yang paling membantu

@normj Ada rencana untuk memperbaikinya?

Semua 7 komentar

Saya dapat mereproduksi masalah tetapi belum yakin mengapa itu terjadi, tetapi saya akan terus menyelidiki.

Beberapa berita tentang topik ini?

@normj , Saya juga mengalami masalah serupa dengan filter tindakan ubahsuaian ini

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);
            }
        }
    }
}

Ini berfungsi dengan baik secara lokal dan mengembalikan kesalahan validasi dan menghentikan permintaan, tetapi tidak dijalankan saat diterapkan ke AWS Lambda.

Bug ini masih terjadi, apakah ada rencana untuk memperbaikinya?

@normj Ada rencana untuk memperbaikinya?

Apa yang terbaru tentang ini? Sudah lebih dari setahun sejak komentar terakhir ditambahkan. @ NGL321 , dapatkah Anda memberikan pembaruan?

Hai @julealgon ,

Maaf untuk labelnya dan pergi. Kami saat ini mengetahui bug ini dan berencana untuk memperbaikinya, tetapi sayangnya saya tidak dapat memberi Anda garis waktu yang lebih konkret saat ini karena belum ada dalam rencana perbaikan langsung.
Jika ini memblokir, Anda dipersilakan untuk mengirimkan permintaan penarikan untuk memperbaikinya dan kami akan meninjaunya sesegera mungkin. Atau, terus perbaiki ini, dan saya akan memastikannya mendapat perhatian sesegera mungkin (semakin banyak orang yang meminta perbaikan, semakin tinggi kita dapat memindahkannya dalam prioritas kita) 😉

😸 😷

Apakah halaman ini membantu?
0 / 5 - 0 peringkat