Skip to content

Commit 7410233

Browse files
committed
feat: api 양식에 세션 아이디 포함
1 parent 9052c49 commit 7410233

3 files changed

Lines changed: 23 additions & 4 deletions

File tree

src/main/java/com/example/customschatbotbe/domain/chatbot/controller/ChatBotController.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import com.example.customschatbotbe.domain.chatbot.dto.request.ChatRequest;
55
import com.example.customschatbotbe.domain.chatbot.dto.response.ChatResponse;
66
import com.example.customschatbotbe.global.exception.response.ApiResponse;
7+
import jakarta.servlet.http.HttpServletRequest;
78
import lombok.RequiredArgsConstructor;
89
import org.springframework.http.ResponseEntity;
910
import org.springframework.web.bind.annotation.PostMapping;
@@ -21,8 +22,9 @@ public class ChatBotController {
2122
private final ChatBotService chatBotService;
2223

2324
@PostMapping
24-
public Mono<ResponseEntity<ApiResponse<ChatResponse>>> chat(@RequestBody ChatRequest chatRequest) {
25-
return chatBotService.generateReply(chatRequest)
25+
public Mono<ResponseEntity<ApiResponse<ChatResponse>>> chat(@RequestBody ChatRequest chatRequest, HttpServletRequest httpServletRequest) {
26+
String sessionId = httpServletRequest.getSession().getId();
27+
return chatBotService.generateReply(chatRequest, sessionId)
2628
.map(chatResponse -> ResponseEntity.ok(ApiResponse.success(SUCCESS, chatResponse)));
2729
}
2830
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package com.example.customschatbotbe.domain.chatbot.dto.request;
2+
3+
import lombok.Builder;
4+
import lombok.Getter;
5+
import lombok.Setter;
6+
7+
@Getter
8+
@Setter
9+
@Builder
10+
public class AiChatRequest {
11+
private String message;
12+
private String sessionId;
13+
}

src/main/java/com/example/customschatbotbe/domain/chatbot/service/ChatBotService.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.example.customschatbotbe.domain.chatbot.service;
22

3+
import com.example.customschatbotbe.domain.chatbot.dto.request.AiChatRequest;
34
import com.example.customschatbotbe.domain.chatbot.dto.request.ChatRequest;
45
import com.example.customschatbotbe.domain.chatbot.dto.response.ChatResponse;
56
import com.example.customschatbotbe.global.exception.BusinessException;
@@ -14,11 +15,14 @@
1415
public class ChatBotService {
1516
private final WebClient webClient;
1617

17-
public Mono<ChatResponse> generateReply(ChatRequest chatRequest){
18+
public Mono<ChatResponse> generateReply(ChatRequest chatRequest, String sessionId){
1819
try {
1920
return webClient.post()
2021
.uri("/predict")
21-
.bodyValue(chatRequest)
22+
.bodyValue(AiChatRequest.builder()
23+
.message(chatRequest.getMessage())
24+
.sessionId(sessionId)
25+
.build())
2226
.retrieve()
2327
.bodyToMono(ChatResponse.class);
2428
} catch (Exception e) {

0 commit comments

Comments
 (0)