Command.cs 697 B

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