header('HX-Request')) { return response('', 200)->header('HX-Redirect', route('additional.notion-search.index')); } return view('additional.notion-search.index'); } /** * AJAX 검색 API */ public function search(Request $request): JsonResponse { $validated = $request->validate([ 'message' => 'required|string|max:1000', 'history' => 'nullable|array', ]); try { $service = new NotionService; $result = $service->searchWithAi( $validated['message'], $validated['history'] ?? [] ); return response()->json($result); } catch (\RuntimeException $e) { return response()->json([ 'reply' => $e->getMessage(), 'debug' => null, ]); } } }