rjweb-server
Version:
Easy and Robust Way to create a Web Server with Many Easy-to-use Features in NodeJS
57 lines (56 loc) • 1.17 kB
JavaScript
import WSConnect from "./WsConnect";
class WSMessage extends WSConnect {
/**
* Initializes a new Instance of a Web Context
* @since 7.0.0
*/
constructor(controller, localContext, ws) {
super(controller, localContext, ws);
/**
* The Type of this Request
* @since 5.7.0
*/
this.type = "message";
}
/**
* The Type of the Socket Message
* @since 7.8.0
*/
get messageType() {
if (!this.ctx.body.parsed)
this.message;
return this.ctx.body.type;
}
/**
* The Socket Message (JSON Automatically parsed if enabled)
* @since 5.4.0
*/
get message() {
if (!this.ctx.body.parsed) {
const stringified = this.ctx.body.raw.toString();
try {
this.ctx.body.parsed = JSON.parse(stringified);
} catch {
this.ctx.body.parsed = stringified;
}
}
return this.ctx.body.parsed;
}
/**
* The Raw Socket Message
* @since 5.5.2
*/
get rawMessage() {
return this.ctx.body.raw.toString();
}
/**
* The Raw Socket Message as Buffer
* @since 8.1.4
*/
get rawMessageBytes() {
return this.ctx.body.raw;
}
}
export {
WSMessage as default
};