Merge pull request 'feat: 新增搜素 API' (#4) from feature/search-api into main
Reviewed-on: #4
This commit was merged in pull request #4.
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -22,6 +22,9 @@
|
|||||||
# misc
|
# misc
|
||||||
.DS_Store
|
.DS_Store
|
||||||
*.pem
|
*.pem
|
||||||
|
/.idea/
|
||||||
|
AGENTS.md
|
||||||
|
CLAUDE.md
|
||||||
|
|
||||||
# debug
|
# debug
|
||||||
npm-debug.log*
|
npm-debug.log*
|
||||||
|
|||||||
12
app/api/resources/route.ts
Normal file
12
app/api/resources/route.ts
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
import { resourceSearch } from "../../../lib/mcp-operations";
|
||||||
|
|
||||||
|
export async function GET(request: Request) {
|
||||||
|
const searchParams = new URL(request.url).searchParams;
|
||||||
|
return Response.json(
|
||||||
|
await resourceSearch({
|
||||||
|
query: searchParams.get("q") ?? "",
|
||||||
|
limit: Number(searchParams.get("limit")) || 50,
|
||||||
|
offset: Number(searchParams.get("offset")) || 0,
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -362,7 +362,7 @@ function resourceWhere(input: ResourceFilters) {
|
|||||||
const bindings: unknown[] = [];
|
const bindings: unknown[] = [];
|
||||||
if (input.query?.trim()) {
|
if (input.query?.trim()) {
|
||||||
conditions.push(
|
conditions.push(
|
||||||
"(a.nickname LIKE ? ESCAPE '\\' OR a.public_account_id LIKE ? ESCAPE '\\' OR a.current_contact LIKE ? ESCAPE '\\' OR a.tags LIKE ? ESCAPE '\\' OR a.bio LIKE ? ESCAPE '\\')",
|
"(a.nickname LIKE ? ESCAPE '\\\\' OR a.public_account_id LIKE ? ESCAPE '\\\\' OR a.current_contact LIKE ? ESCAPE '\\\\' OR a.tags LIKE ? ESCAPE '\\\\' OR a.bio LIKE ? ESCAPE '\\\\')",
|
||||||
);
|
);
|
||||||
const pattern = like(input.query.trim());
|
const pattern = like(input.query.trim());
|
||||||
bindings.push(pattern, pattern, pattern, pattern, pattern);
|
bindings.push(pattern, pattern, pattern, pattern, pattern);
|
||||||
|
|||||||
Reference in New Issue
Block a user