aboutsummaryrefslogtreecommitdiff
path: root/packages/bun-uws/examples/ServerName.cpp
blob: 9daaf53b6c95eb9a0278477354ba8b0efa463b9f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include "App.h"

/* Note that uWS::SSLApp({options}) is the same as uWS::App() when compiled without SSL support */

int main() {
	/* The SSL context given in SSLApp constructor is the default / catch-all context */
	uWS::SSLApp app = uWS::SSLApp({
	  .key_file_name = "misc/key.pem",
	  .cert_file_name = "misc/cert.pem",
	  .passphrase = "1234"
	}).get("/*", [](auto *res, auto */*req*/) {
	    res->end("Hello from catch-all context!");
	}).addServerName("*.google.*", {
	  /* Following is the context for *.google.* domain */
	  .key_file_name = "misc/key.pem",
	  .cert_file_name = "misc/cert.pem",
	  .passphrase = "1234"
	}).domain("*.google.*").get("/*", [](auto *res, auto */*req*/) {
	    res->end("Hello from *.google.* context!");
	}).listen(3000, [](auto *listenSocket) {
	    if (listenSocket) {
			std::cout << "Listening on port " << 3000 << std::endl;
	    } else {
			std::cout << "Failed to listen on port 3000" << std::endl;
		}
	}).run();
}