Aws-lambda-dotnet: Amazon.Lambda.AspNetCoreServer๋Š” ๋กœ์ปฌ ๋ฐ AWS์—์„œ ๋‹ค๋ฅธ ๋™์ž‘

์— ๋งŒ๋“  2018๋…„ 02์›” 28์ผ  ยท  7์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: aws/aws-lambda-dotnet

์•ˆ๋…•ํ•˜์„ธ์š”, AWS ํŒ€,

LambdaEntryPoint ๊ตฌํ˜„์— ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋™์ž‘์ด LocalEntryPoint์—์žˆ๋Š” ๊ฒƒ๊ณผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ์ด ์ผ€์ด์Šค๋ฅผ ๋‹ค์‹œ ๋งŒ๋“ค๋ ค๋ฉด CustomAttribute๋ฅผ ๋งŒ๋“ค์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

```
๊ณต์šฉ ํด๋ž˜์Šค CustomAttribute : ActionFilterAttribute
{
๊ณต์šฉ ์žฌ์ •์˜ void OnActionExecuted (ActionExecutedContext actionExecutedContext)
{
HttpResponse ์‘๋‹ต = actionExecutedContext.HttpContext.Response;
LambdaLogger.Log ( "Test"+ response.StatusCode + ""+ (response! = null) .ToString () + ""+
response.IsSuccessStatusCode (). ToString () + ""+ (actionExecutedContext.Result! = null) .ToString ());

        base.OnActionExecuted(actionExecutedContext);
    }
}

```

localEntry๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ์ด CustomAttribute๋ฅผ ํ…Œ์ŠคํŠธํ•˜๋ฉด StatusCode๊ฐ€ ์„ค์ •๋˜์–ด์žˆ๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์ง€๋งŒ AWS์—์„œ ์ด๊ฒƒ์„ ๋””๋ฒ„๊น…ํ•˜๋ฉด 0์ด ํ‘œ์‹œ๋˜์–ด ๋‹ค๋ฅธ ์ˆœ์„œ๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. OData ํŒ€๊ณผ ํ•จ๊ป˜์ด ๋ฌธ์ œ๋ฅผ ์กฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค : OData / WebApi # 1227

A bug modullambda-client-lib queued

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

@normj ์ด๊ฒƒ์„ ๊ณ ์น  ๊ณ„ํš์ด ์žˆ์Šต๋‹ˆ๊นŒ?

๋ชจ๋“  7 ๋Œ“๊ธ€

๋ฌธ์ œ๋ฅผ ์žฌํ˜„ ํ•  ์ˆ˜ ์žˆ์—ˆ์ง€๋งŒ ์™œ ๋ฐœ์ƒํ•˜๋Š”์ง€๋Š” ํ™•์‹คํ•˜์ง€ ์•Š์ง€๋งŒ ๊ณ„์† ์กฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์ด ์ฃผ์ œ์— ๋Œ€ํ•œ ๋‰ด์Šค๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

@normj ,์ด ์‚ฌ์šฉ์ž ์ง€์ • ์ž‘์—… ํ•„ํ„ฐ์™€ ๋น„์Šทํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

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

๋กœ์ปฌ์—์„œ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜๊ณ  ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์˜ค๋ฅ˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ  ์š”์ฒญ์„ ์ข…๋ฃŒํ•˜์ง€๋งŒ AWS Lambda์— ๋ฐฐํฌ ํ•  ๋•Œ ์‹คํ–‰๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ด ๋ฒ„๊ทธ๋ฅผ ๋ณต๊ตฌ ํ•  ๊ณ„ํš์ด ์žˆ๋‹ค๋ฉด ์—ฌ์ „ํžˆ ๋ฐœ์ƒํ•ฉ๋‹ˆ๊นŒ?

@normj ์ด๊ฒƒ์„ ๊ณ ์น  ๊ณ„ํš์ด ์žˆ์Šต๋‹ˆ๊นŒ?

์ด๊ฒƒ์— ๋Œ€ํ•œ ์ตœ์‹  ์ •๋ณด๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ๋งˆ์ง€๋ง‰ ๋Œ“๊ธ€์ด ์ถ”๊ฐ€ ๋œ ์ง€ 1 ๋…„์ด ๋„˜์—ˆ์Šต๋‹ˆ๋‹ค. @ NGL321 , ์—…๋ฐ์ดํŠธ๋ฅผ ์ œ๊ณต ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์•ˆ๋…•ํ•˜์„ธ์š” @julealgon ,

๋ ˆ์ด๋ธ” ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ์ด ๋ฒ„๊ทธ๋ฅผ์ธ์ง€ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ์ด๋ฅผ ์ˆ˜์ •ํ•  ๊ณ„ํš์ด์ง€๋งŒ ์•ˆํƒ€๊น๊ฒŒ๋„ ์ฆ‰๊ฐ์ ์ธ ์ˆ˜์ • ๊ณ„ํš์— ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ํ˜„์žฌ๋กœ์„œ๋Š”๋ณด๋‹ค ๊ตฌ์ฒด์ ์ธ ์ผ์ •์„ ์•Œ๋ ค ๋“œ๋ฆด ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
์ด๊ฒƒ์ด ์ฐจ๋‹จ ๋œ ๊ฒฝ์šฐ ํ’€ ์š”์ฒญ์„ ์ œ์ถœํ•˜์—ฌ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๊ฐ€๋Šฅํ•œ ํ•œ ๋นจ๋ฆฌ ๊ฒ€ํ† ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋˜๋Š” ๊ณ„์†ํ•ด์„œ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ฉด ๊ฐ€๋Šฅํ•œ ํ•œ ๋นจ๋ฆฌ์ฃผ์˜๋ฅผ ๋Œ ๊ฒƒ์ž…๋‹ˆ๋‹ค (์ˆ˜์ •์„ ์š”์ฒญํ•˜๋Š” ์‚ฌ๋žŒ์ด ๋งŽ์„์ˆ˜๋ก ์šฐ์„  ์ˆœ์œ„์—์„œ ๋” ๋†’์€ ์ˆ˜์ค€์œผ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ์Œ) ๐Ÿ˜‰

๐Ÿ˜ธ ๐Ÿ˜ท

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰