Version 0.2.2 Add multiple cookie token #2
This commit is contained in:
		
							
								
								
									
										60
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										60
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							@@ -1,13 +1,14 @@
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
  "name": "subsonics-web",
 | 
					  "name": "subsonics-web",
 | 
				
			||||||
  "version": "0.2.0",
 | 
					  "version": "0.2.2",
 | 
				
			||||||
  "lockfileVersion": 2,
 | 
					  "lockfileVersion": 2,
 | 
				
			||||||
  "requires": true,
 | 
					  "requires": true,
 | 
				
			||||||
  "packages": {
 | 
					  "packages": {
 | 
				
			||||||
    "": {
 | 
					    "": {
 | 
				
			||||||
      "name": "subsonics-web",
 | 
					      "name": "subsonics-web",
 | 
				
			||||||
      "version": "0.2.0",
 | 
					      "version": "0.2.2",
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
 | 
					        "cookie": "^0.5.0",
 | 
				
			||||||
        "cookie-parser": "^1.4.6",
 | 
					        "cookie-parser": "^1.4.6",
 | 
				
			||||||
        "discord.js": "^14.9.0",
 | 
					        "discord.js": "^14.9.0",
 | 
				
			||||||
        "ejs": "^3.1.9",
 | 
					        "ejs": "^3.1.9",
 | 
				
			||||||
@@ -433,9 +434,9 @@
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/cookie": {
 | 
					    "node_modules/cookie": {
 | 
				
			||||||
      "version": "0.4.1",
 | 
					      "version": "0.5.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==",
 | 
					      "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
 | 
				
			||||||
      "engines": {
 | 
					      "engines": {
 | 
				
			||||||
        "node": ">= 0.6"
 | 
					        "node": ">= 0.6"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
@@ -452,6 +453,14 @@
 | 
				
			|||||||
        "node": ">= 0.8.0"
 | 
					        "node": ">= 0.8.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "node_modules/cookie-parser/node_modules/cookie": {
 | 
				
			||||||
 | 
					      "version": "0.4.1",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==",
 | 
				
			||||||
 | 
					      "engines": {
 | 
				
			||||||
 | 
					        "node": ">= 0.6"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "node_modules/cookie-signature": {
 | 
					    "node_modules/cookie-signature": {
 | 
				
			||||||
      "version": "1.0.6",
 | 
					      "version": "1.0.6",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
 | 
				
			||||||
@@ -578,6 +587,14 @@
 | 
				
			|||||||
        "node": ">=10.0.0"
 | 
					        "node": ">=10.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    "node_modules/engine.io/node_modules/cookie": {
 | 
				
			||||||
 | 
					      "version": "0.4.2",
 | 
				
			||||||
 | 
					      "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz",
 | 
				
			||||||
 | 
					      "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==",
 | 
				
			||||||
 | 
					      "engines": {
 | 
				
			||||||
 | 
					        "node": ">= 0.6"
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    "node_modules/engine.io/node_modules/debug": {
 | 
					    "node_modules/engine.io/node_modules/debug": {
 | 
				
			||||||
      "version": "4.3.4",
 | 
					      "version": "4.3.4",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
 | 
				
			||||||
@@ -687,14 +704,6 @@
 | 
				
			|||||||
        "node": ">= 0.10.0"
 | 
					        "node": ">= 0.10.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/express/node_modules/cookie": {
 | 
					 | 
				
			||||||
      "version": "0.5.0",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
 | 
					 | 
				
			||||||
      "engines": {
 | 
					 | 
				
			||||||
        "node": ">= 0.6"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/fast-deep-equal": {
 | 
					    "node_modules/fast-deep-equal": {
 | 
				
			||||||
      "version": "3.1.3",
 | 
					      "version": "3.1.3",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
 | 
				
			||||||
@@ -2038,9 +2047,9 @@
 | 
				
			|||||||
      "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA=="
 | 
					      "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "cookie": {
 | 
					    "cookie": {
 | 
				
			||||||
      "version": "0.4.1",
 | 
					      "version": "0.5.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA=="
 | 
					      "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "cookie-parser": {
 | 
					    "cookie-parser": {
 | 
				
			||||||
      "version": "1.4.6",
 | 
					      "version": "1.4.6",
 | 
				
			||||||
@@ -2049,6 +2058,13 @@
 | 
				
			|||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "cookie": "0.4.1",
 | 
					        "cookie": "0.4.1",
 | 
				
			||||||
        "cookie-signature": "1.0.6"
 | 
					        "cookie-signature": "1.0.6"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "dependencies": {
 | 
				
			||||||
 | 
					        "cookie": {
 | 
				
			||||||
 | 
					          "version": "0.4.1",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA=="
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "cookie-signature": {
 | 
					    "cookie-signature": {
 | 
				
			||||||
@@ -2144,6 +2160,11 @@
 | 
				
			|||||||
        "ws": "~8.11.0"
 | 
					        "ws": "~8.11.0"
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
 | 
					        "cookie": {
 | 
				
			||||||
 | 
					          "version": "0.4.2",
 | 
				
			||||||
 | 
					          "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz",
 | 
				
			||||||
 | 
					          "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA=="
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
        "debug": {
 | 
					        "debug": {
 | 
				
			||||||
          "version": "4.3.4",
 | 
					          "version": "4.3.4",
 | 
				
			||||||
          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
 | 
					          "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
 | 
				
			||||||
@@ -2227,13 +2248,6 @@
 | 
				
			|||||||
        "type-is": "~1.6.18",
 | 
					        "type-is": "~1.6.18",
 | 
				
			||||||
        "utils-merge": "1.0.1",
 | 
					        "utils-merge": "1.0.1",
 | 
				
			||||||
        "vary": "~1.1.2"
 | 
					        "vary": "~1.1.2"
 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "dependencies": {
 | 
					 | 
				
			||||||
        "cookie": {
 | 
					 | 
				
			||||||
          "version": "0.5.0",
 | 
					 | 
				
			||||||
          "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
 | 
					 | 
				
			||||||
          "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw=="
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "fast-deep-equal": {
 | 
					    "fast-deep-equal": {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,7 +1,7 @@
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
  "name": "subsonics-web",
 | 
					  "name": "subsonics-web",
 | 
				
			||||||
  "author": "Raphix",
 | 
					  "author": "Raphix",
 | 
				
			||||||
  "version": "0.2.1",
 | 
					  "version": "0.2.2",
 | 
				
			||||||
  "nodemonConfig": {
 | 
					  "nodemonConfig": {
 | 
				
			||||||
    "ext": "js, html",
 | 
					    "ext": "js, html",
 | 
				
			||||||
    "ignore": [
 | 
					    "ignore": [
 | 
				
			||||||
@@ -12,6 +12,7 @@
 | 
				
			|||||||
    "delay": "2000000"
 | 
					    "delay": "2000000"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "dependencies": {
 | 
					  "dependencies": {
 | 
				
			||||||
 | 
					    "cookie": "^0.5.0",
 | 
				
			||||||
    "cookie-parser": "^1.4.6",
 | 
					    "cookie-parser": "^1.4.6",
 | 
				
			||||||
    "discord.js": "^14.9.0",
 | 
					    "discord.js": "^14.9.0",
 | 
				
			||||||
    "ejs": "^3.1.9",
 | 
					    "ejs": "^3.1.9",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -3,8 +3,7 @@ const { __glob, __web } = require("../modules/global-variables");
 | 
				
			|||||||
const { LogType } = require("./sub-log");
 | 
					const { LogType } = require("./sub-log");
 | 
				
			||||||
const log = require("./sub-log");
 | 
					const log = require("./sub-log");
 | 
				
			||||||
const auth = require("./sub-auth");
 | 
					const auth = require("./sub-auth");
 | 
				
			||||||
const cookieParser = require("cookie-parser");
 | 
					const cook = require("cookie")
 | 
				
			||||||
const { error } = require("console");
 | 
					 | 
				
			||||||
const wlog = new LogType("Web")
 | 
					const wlog = new LogType("Web")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module.exports.WebServer = class {
 | 
					module.exports.WebServer = class {
 | 
				
			||||||
@@ -70,7 +69,32 @@ function init() {
 | 
				
			|||||||
    });
 | 
					    });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    server.listen(port);
 | 
					    server.listen(port);
 | 
				
			||||||
    server.on('error', onError(error, port));
 | 
					    server.on('error', (error) => {
 | 
				
			||||||
 | 
					        if (error.syscall !== 'listen') {
 | 
				
			||||||
 | 
					            throw error;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					     
 | 
				
			||||||
 | 
					        let bind = typeof port === 'string'
 | 
				
			||||||
 | 
					            ? 'Pipe ' + port
 | 
				
			||||||
 | 
					            : 'Port ' + port;
 | 
				
			||||||
 | 
					     
 | 
				
			||||||
 | 
					        // Handle specific listen errors with
 | 
				
			||||||
 | 
					        // friendly messages
 | 
				
			||||||
 | 
					        switch (error.code) {
 | 
				
			||||||
 | 
					            case 'EACCES':
 | 
				
			||||||
 | 
					                console.error(bind
 | 
				
			||||||
 | 
					                    + ' requires elevated privileges');
 | 
				
			||||||
 | 
					                process.exit(1);
 | 
				
			||||||
 | 
					                break;
 | 
				
			||||||
 | 
					            case 'EADDRINUSE':
 | 
				
			||||||
 | 
					                console.error(bind + ' is already in use');
 | 
				
			||||||
 | 
					                process.exit(1);
 | 
				
			||||||
 | 
					                break;
 | 
				
			||||||
 | 
					            default:
 | 
				
			||||||
 | 
					                throw error;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    });
 | 
				
			||||||
    server.on('listening', () => {
 | 
					    server.on('listening', () => {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        let addr = server.address();
 | 
					        let addr = server.address();
 | 
				
			||||||
@@ -104,32 +128,6 @@ function normalizePort(val) {
 | 
				
			|||||||
    return false;
 | 
					    return false;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
// Event listener for HTTP server "error" event
 | 
					 | 
				
			||||||
function onError(error, port) {
 | 
					 | 
				
			||||||
    if (error.syscall !== 'listen') {
 | 
					 | 
				
			||||||
        throw error;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
    let bind = typeof port === 'string'
 | 
					 | 
				
			||||||
        ? 'Pipe ' + port
 | 
					 | 
				
			||||||
        : 'Port ' + port;
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
    // Handle specific listen errors with
 | 
					 | 
				
			||||||
    // friendly messages
 | 
					 | 
				
			||||||
    switch (error.code) {
 | 
					 | 
				
			||||||
        case 'EACCES':
 | 
					 | 
				
			||||||
            console.error(bind
 | 
					 | 
				
			||||||
                + ' requires elevated privileges');
 | 
					 | 
				
			||||||
            process.exit(1);
 | 
					 | 
				
			||||||
            break;
 | 
					 | 
				
			||||||
        case 'EADDRINUSE':
 | 
					 | 
				
			||||||
            console.error(bind + ' is already in use');
 | 
					 | 
				
			||||||
            process.exit(1);
 | 
					 | 
				
			||||||
            break;
 | 
					 | 
				
			||||||
        default:
 | 
					 | 
				
			||||||
            throw error;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function IOConnection(io) {
 | 
					function IOConnection(io) {
 | 
				
			||||||
@@ -166,11 +164,12 @@ function IOConnection(io) {
 | 
				
			|||||||
        socket.on("GET/USER_INFO", () => {
 | 
					        socket.on("GET/USER_INFO", () => {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            var token = socket.handshake.headers.cookie
 | 
					            var cookies = socket.handshake.headers.cookie
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            if(token) {
 | 
					            if(cookies) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                token = socket.handshake.headers.cookie.replace("token=", "")
 | 
					                cookies = cook.parse(cookies)
 | 
				
			||||||
 | 
					                var token = cookies.token
 | 
				
			||||||
                 
 | 
					                 
 | 
				
			||||||
                if(auth.checkUser(token)) {
 | 
					                if(auth.checkUser(token)) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user