hmt 3 년 전
부모
커밋
56ccb85faf
2개의 변경된 파일15개의 추가작업 그리고 10개의 파일을 삭제
  1. 14 8
      app.ts
  2. 1 2
      bbb.ts

+ 14 - 8
app.ts

@@ -1,5 +1,4 @@
-import { createError, opine, proxy, ErrorRequestHandler, Router, createHash } from "./deps.ts";
-export interface server { host: string; secret: string };
+import { createError, opine, ErrorRequestHandler, Router, createHash, server, proxy } from "./deps.ts";
 import { BBB } from './bbb.ts';
 
 // give your tinyscale server a secret so it looks like a BBB server
@@ -50,8 +49,8 @@ const router = Router()
 const api = async (req, res, next) => {
   const handler = new BBB(req)
   if (!handler.authenticated(secret)) {
-    res.setStatus(401).end()
-    return
+    // res.setStatus(401).end()
+    // return
   }
   let server: server
   try {
@@ -62,10 +61,14 @@ const api = async (req, res, next) => {
   }
   console.log(`Redirecting to ${server.host}`)
   const redirect = handler.rewritten_query(server)
-  console.log(redirect)
-  return redirect
+  console.log("redirect to: ", redirect)
+  req.new_address = redirect
+  next()
 };
-router.all("/bigbluebutton/api/:call", api)
+// @ts-ignore
+const redirect = (req, res, next) => { console.log(req.new_address);return req.new_address}
+// @ts-ignore
+router.all("/bigbluebutton/api/:call", proxy("http://google.com"))
 // the fake answering machine to make sure we are recognized as a proper api
 router.get("/bigbluebutton/api", (req, res, next) => {
   console.log('sending fake xml response')
@@ -79,6 +82,7 @@ router.get("/bigbluebutton/api", (req, res, next) => {
 const errorHandler: ErrorRequestHandler = (err, req, res, next) => {
   res.setStatus(err.status ?? 500);
   console.log(res.status, req.originalUrl)
+  console.log(err)
   res.end();
 };
 
@@ -87,7 +91,9 @@ const app = opine()
   console.log(req.method, req.originalUrl)
   next()
 })
-            .use("/", router)
+.use(api)
+            // .use("/", router)
+            .get("/bigbluebutton/api/:call", proxy("http://google.com"))
             .use((req, res, next) => { next(createError(404)); })
             .use(errorHandler);
 

+ 1 - 2
bbb.ts

@@ -1,5 +1,4 @@
-import { Request, ParamsDictionary,  createHash } from "./deps.ts";
-export interface server { host: string; secret: string };
+import { Request, ParamsDictionary,  createHash, server } from "./deps.ts";
 
 export class BBB {
   call: string