init. moved lil website for madeline into fuse project so I can write apis in here
This commit is contained in:
21
src/app/api/getCountdown/route.ts
Executable file
21
src/app/api/getCountdown/route.ts
Executable file
@ -0,0 +1,21 @@
|
||||
'use server';
|
||||
import { NextResponse } from 'next/server';
|
||||
import { getCountdown } from '~/server/functions';
|
||||
|
||||
export const GET = async (request: Request) => {
|
||||
try {
|
||||
const url = new URL(request.url);
|
||||
const apiKey = url.searchParams.get('apiKey');
|
||||
if (apiKey !== process.env.API_KEY) {
|
||||
console.log('Invalid API Key');
|
||||
return NextResponse.json({ message: "Invalid API Key" }, { status: 401 });
|
||||
} else {
|
||||
const countdown = await getCountdown();
|
||||
return NextResponse.json(countdown);
|
||||
}
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
return NextResponse.json({ message: "Error" }, { status: 500 });
|
||||
}
|
||||
};
|
||||
// localhost:3000/api/getCountdown?apiKey=I_Love_Madeline
|
22
src/app/api/getMessage/route.ts
Executable file
22
src/app/api/getMessage/route.ts
Executable file
@ -0,0 +1,22 @@
|
||||
'use server';
|
||||
import { NextResponse } from 'next/server';
|
||||
import { getMessage } from '~/server/functions';
|
||||
|
||||
export const GET = async (request: Request) => {
|
||||
try {
|
||||
const url = new URL(request.url);
|
||||
const apiKey = url.searchParams.get('apiKey');
|
||||
if (apiKey !== process.env.API_KEY) {
|
||||
console.log('Invalid API Key');
|
||||
return NextResponse.json({ message: "Invalid API Key" }, { status: 401 });
|
||||
} else {
|
||||
const userId = url.searchParams.get('userId') ?? '2';
|
||||
const message = await getMessage(parseInt(userId));
|
||||
return NextResponse.json(message);
|
||||
}
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
return NextResponse.json({ message: "Error" }, { status: 500 });
|
||||
}
|
||||
};
|
||||
// localhost:3000/api/getMessage?apiKey=I_Love_Madeline&userId=2
|
23
src/app/api/setCountdown/route.ts
Executable file
23
src/app/api/setCountdown/route.ts
Executable file
@ -0,0 +1,23 @@
|
||||
"use server";
|
||||
import { NextResponse } from "next/server";
|
||||
import type { NextRequest } from "next/server";
|
||||
import { setCountdown } from "~/server/functions";
|
||||
|
||||
export const POST = async (request: NextRequest) => {
|
||||
try {
|
||||
const url = new URL(request.url);
|
||||
const apiKey = url.searchParams.get("apiKey");
|
||||
if (apiKey !== process.env.API_KEY) {
|
||||
console.log("Invalid API Key");
|
||||
return NextResponse.json({ message: "Invalid API Key" }, { status: 401 });
|
||||
} else {
|
||||
const countdown = url.searchParams.get("countdown") ?? "2023-01-01T00:00:00.000Z";
|
||||
await setCountdown(new Date(countdown));
|
||||
return NextResponse.json({ message: "Countdown set successfully" });
|
||||
}
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
return NextResponse.json({ message: "Error" }, { status: 500 });
|
||||
}
|
||||
};
|
||||
// localhost:3000/api/setCountdown?apiKey=I_Love_Madeline&countdown=2023-01-01T00:00:00.000Z
|
24
src/app/api/setMessage/route.ts
Executable file
24
src/app/api/setMessage/route.ts
Executable file
@ -0,0 +1,24 @@
|
||||
"use server";
|
||||
import { NextResponse } from "next/server";
|
||||
import type { NextRequest } from "next/server";
|
||||
import { setMessage } from "~/server/functions";
|
||||
|
||||
export const POST = async (request: NextRequest) => {
|
||||
try {
|
||||
const url = new URL(request.url);
|
||||
const apiKey = url.searchParams.get("apiKey");
|
||||
if (apiKey !== process.env.API_KEY) {
|
||||
console.log("Invalid API Key");
|
||||
return NextResponse.json({ message: "Invalid API Key" }, { status: 401 });
|
||||
} else {
|
||||
const userId = url.searchParams.get("userId") ?? "2";
|
||||
const message = url.searchParams.get("message") ?? "Test";
|
||||
await setMessage(parseInt(userId), message);
|
||||
return NextResponse.json({ message: "Message set successfully" });
|
||||
}
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
return NextResponse.json({ message: "Error" }, { status: 500 });
|
||||
}
|
||||
};
|
||||
// localhost:3000/api/setMessage?apiKey=I_Love_Madeline&userId=2&message=HelloWorld
|
Reference in New Issue
Block a user