feat: Sandbox 모드 미들웨어 구현 (#34)
- SandboxMiddleware 추가: X-SPMS-TEST 헤더로 테스트 모드 감지 - HttpContext.Items["IsSandbox"] 플래그 설정 - 미들웨어 파이프라인 14번 위치에 등록 Closes #34
This commit is contained in:
parent
c49807c985
commit
9185afd5e9
|
|
@ -62,8 +62,8 @@ public static class ApplicationBuilderExtensions
|
|||
// -- 13. X-API-KEY 검증 (SDK/디바이스 엔드포인트용) --
|
||||
app.UseMiddleware<ApiKeyMiddleware>();
|
||||
|
||||
// -- 14. X-SPMS-TEST 샌드박스 모드 (미구현 — Issue #14) --
|
||||
// app.UseMiddleware<SandboxMiddleware>();
|
||||
// -- 14. X-SPMS-TEST 샌드박스 모드 --
|
||||
app.UseMiddleware<SandboxMiddleware>();
|
||||
|
||||
// -- 15. Swagger UI (개발 환경만) --
|
||||
if (app.Environment.IsDevelopment())
|
||||
|
|
|
|||
16
SPMS.API/Middlewares/SandboxMiddleware.cs
Normal file
16
SPMS.API/Middlewares/SandboxMiddleware.cs
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
namespace SPMS.API.Middlewares;
|
||||
|
||||
public class SandboxMiddleware
|
||||
{
|
||||
private readonly RequestDelegate _next;
|
||||
|
||||
public SandboxMiddleware(RequestDelegate next) => _next = next;
|
||||
|
||||
public async Task InvokeAsync(HttpContext context)
|
||||
{
|
||||
var isTest = context.Request.Headers["X-SPMS-TEST"].FirstOrDefault();
|
||||
context.Items["IsSandbox"] = string.Equals(isTest, "true", StringComparison.OrdinalIgnoreCase);
|
||||
|
||||
await _next(context);
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user