add api route to get user by name (#2)
This commit is contained in:
		
							
								
								
									
										19
									
								
								src/routes/api/user/+server.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								src/routes/api/user/+server.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | ||||
| import type { RequestHandler } from '@sveltejs/kit'; | ||||
| import { User } from '$lib/server/database'; | ||||
| import { env } from '$env/dynamic/private'; | ||||
|  | ||||
| export const GET = (async ({ url }) => { | ||||
| 	if (env.REPORT_SECRET && url.searchParams.get('secret') !== env.REPORT_SECRET) | ||||
| 		return new Response(null, { status: 401 }); | ||||
|  | ||||
| 	const username = url.searchParams.get('username'); | ||||
| 	if (username == null) return new Response(null, { status: 400 }); | ||||
|  | ||||
| 	const user = await User.findOne({ where: { username: username } }); | ||||
| 	if (user == null) return new Response(null, { status: 400 }); | ||||
|  | ||||
| 	return new Response( | ||||
| 		JSON.stringify({ uuid: user.uuid, firstname: user.firstname, lastname: user.lastname }), | ||||
| 		{ status: 200 } | ||||
| 	); | ||||
| }) satisfies RequestHandler; | ||||
		Reference in New Issue
	
	Block a user