diff --git a/Program.cs b/Program.cs index 2a58239..1dea0f7 100644 --- a/Program.cs +++ b/Program.cs @@ -26,7 +26,7 @@ using Back.Program.Services.V1.Interfaces; Boolean isLocal = false; // 로컬 테스트 할 때는 이거 키고 아니면 끄기 -// isLocal = true; +isLocal = true; var builder = WebApplication.CreateBuilder(args); @@ -127,6 +127,7 @@ builder.Services.AddScoped(); builder.Services.AddScoped(); builder.Services.AddScoped(); +builder.Services.AddScoped(); builder.Services.AddScoped(); builder.Services.AddScoped(); @@ -201,10 +202,8 @@ else } // 로컬 테스트 위한 부분 (올릴떄는 켜두기) -app.UseHttpsRedirection(); +// app.UseHttpsRedirection(); -//예외처리 미들웨어 부분 -app.UseMiddleware(); // 헤더 미들웨어 부분 app.UseMiddleware ((object)new string[] { "iOS_AM_Connect_Key", "And_AM_Connect_Key", "Web_AM_Connect_Key" }); @@ -217,16 +216,20 @@ app.UseStaticFiles(new StaticFileOptions app.UseRouting(); app.UseCors("CorsPolicy"); +app.UseAuthentication(); app.UseAuthorization(); app.UseWebSockets(); - +Console.WriteLine($"[정적 파일 경로] {staticRoot}"); app.UseEndpoints(end => { ControllerEndpointRouteBuilderExtensions.MapControllers(end); end.MapHub("/chatHub"); - end.MapFallbackToFile("index.html"); + end.MapFallback(context => { return context.Response.SendFileAsync(Path.Combine(staticRoot, "index.html")); }); }); +//예외처리 미들웨어 부분 +app.UseMiddleware(); + app.Run(); \ No newline at end of file diff --git a/Program/Controllers/V1/UserController.cs b/Program/Controllers/V1/UserController.cs index 700ab93..b4ec050 100644 --- a/Program/Controllers/V1/UserController.cs +++ b/Program/Controllers/V1/UserController.cs @@ -21,13 +21,15 @@ namespace Back.Program.Controllers.V1 private readonly ILogger _logger; private readonly IRepositoryService _repositoryService; private readonly IUserService _userService; + private readonly IKakaoService _kakaoService; public UserController(ILogger logger, - IRepositoryService repositoryService, IUserService userService) + IRepositoryService repositoryService, IUserService userService, IKakaoService kakaoService) { _logger = logger; _repositoryService = repositoryService; _userService = userService; + _kakaoService = kakaoService; } [HttpGet] @@ -104,6 +106,15 @@ namespace Back.Program.Controllers.V1 var result = await _userService.GetAcademy(summary, token); return Ok(result); } + + + [HttpGet("kakao/auth")] + [CustomOperation("카카오 로그인", "카카오 로그인 동작", "사용자")] + public async Task KakaoLogin([FromQuery] string scope) + { + var authUrl = await _kakaoService.GetAuthorizationUrl(scope); + return Redirect(authUrl); + } } } diff --git a/appsettings.json b/appsettings.json index 339b407..056faaf 100644 --- a/appsettings.json +++ b/appsettings.json @@ -12,4 +12,9 @@ "ApnsTopic": "me.myds.ipstein.acamate.AcaMate" }, "AllowedHosts": "*" +// "Kakao": { +// "ClientId": "a9632e6c14d8706ef6c8fe2ef52b721d", +// "ClientSecret": " this is rest api secret key ", +// "RedirectUri": "https://acamate.ipstein.com/kakao" +// } } \ No newline at end of file