You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.5 KiB
Java
48 lines
1.5 KiB
Java
package sh.adb.RandomRedditMemesAPI;
|
|
|
|
import com.sun.net.httpserver.HttpExchange;
|
|
import com.sun.net.httpserver.HttpHandler;
|
|
import com.sun.net.httpserver.HttpServer;
|
|
|
|
import java.io.IOException;
|
|
import java.io.InputStream;
|
|
import java.io.OutputStream;
|
|
import java.net.InetSocketAddress;
|
|
|
|
public class Main {
|
|
|
|
public static void main(String[] args) throws IOException {
|
|
HttpServer server = HttpServer.create(new InetSocketAddress(8000), 0);
|
|
server.createContext("", new ErrorHandler());
|
|
//server.createContext("/api/v1/", new StandardHandler());
|
|
server.createContext("/api/v1/r/", new CommunityHandler());
|
|
server.setExecutor(null);
|
|
server.start();
|
|
}
|
|
|
|
}
|
|
class CommunityHandler implements HttpHandler {
|
|
@Override
|
|
public void handle(HttpExchange t) throws IOException {
|
|
InputStream is = t.getRequestBody();
|
|
//is.read();
|
|
String response = "This is the response";
|
|
t.sendResponseHeaders(200, response.length());
|
|
OutputStream os = t.getResponseBody();
|
|
os.write(response.getBytes());
|
|
os.close();
|
|
}
|
|
}
|
|
class ErrorHandler implements HttpHandler {
|
|
@Override
|
|
public void handle(HttpExchange t) throws IOException {
|
|
InputStream is = t.getRequestBody();
|
|
//is.read();
|
|
String response = "404";
|
|
t.sendResponseHeaders(404, response.length());
|
|
OutputStream os = t.getResponseBody();
|
|
os.write(response.getBytes());
|
|
os.close();
|
|
}
|
|
}
|