| 123456789101112131415161718 |
- using Application.Abstractions.Messaging;
- using SharedKernel.Results;
- namespace Application.Features.Api.Auth.SocialLogin;
- /// <summary>
- /// 소셜 로그인 (Naver/Kakao) — authorization code 를 토큰으로 교환하고 프로필 매칭 후 JWT 발급.
- /// RedirectUri 미전달 시 AppSettings OAuth:{Provider}:RedirectUri 사용.
- /// State 는 네이버 필수 (프론트가 쿠키 대조를 마친 값을 그대로 전달 — 토큰 교환에도 쓰임).
- /// </summary>
- public sealed record Command(
- string Provider,
- string Code,
- string? State = null,
- string? RedirectUri = null,
- string? IpAddress = null,
- string? UserAgent = null
- ) : ICommand<Result<Response>>;
|