fix: complete emulator REST APIGatewayProxyRequest and null-safe AspNetCoreServer marshalling - #2567
Conversation
…er marshalling API Gateway emulator REST translation omitted RequestContext and could leave Path/HttpMethod null, causing NullReferenceException in Amazon.Lambda.AspNetCoreServer. Fixes aws#2566 Co-authored-by: Cursor <cursoragent@cursor.com>
Hi, @normj! Glad to help! This is my secondone after a fix about multiple message hendlers in a same lambda, and there is a feature request that I o opened about allowing other kind of requests through API Gateway to a better mimic of a real environment. These are working on my fork and are a part of a big change on how Aspire works I implemented to allow you to write your applications in a cloud-agnostic way and too many other features to list in here. I hava an AI-guide to help you to know better, and I would appreciate some feedbacks from you if its possible. getpolystack.com/ai <- ask your favorite AI agente to explain you about. I actually need some guidance to move on with this project and I´m working on a pretty much complete solution for a ProductOps AI-guided to help even begginers to work with this. Cheers! |
Issue #, if available:
Fixes #2566
Description of changes:
When the Lambda Test Tool v2 API Gateway emulator translates an HTTP request into a REST
APIGatewayProxyRequest, it omittedRequestContextand could leavePath/HttpMethodnull.Amazon.Lambda.AspNetCoreServerthen threwNullReferenceExceptionwhile marshalling those incomplete events into ASP.NET Core features.This PR:
RequestContext(and default Path/HttpMethod) for emulator-built REST proxy events, closer to real API Gateway / test-invoke payloads. HTTP API v2 translation already setRequestContext.Path,HttpMethod, path parameters, and header values so incomplete events do not NRE.Includes an AutoVer change file (Patch) for both projects.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.