@nodefony/http-bundle
Version:
Nodefony Framework Bundle HTTP
36 lines (29 loc) • 801 B
JavaScript
module.exports = nodefony.register("http2Request", function () {
const Request = class http2Request extends nodefony.Request {
constructor(request, context) {
super(request, context);
}
getHost() {
return this.headers[":authority"];
}
getUserAgent() {
return this.headers['user-agent'];
}
getMethod() {
return this.headers[":method"];
}
getFullUrl() {
// proxy mode
let myurl = `://${this.host}${this.headers[":path"]}`;
if (this.headers && this.headers['x-forwarded-for']) {
return `${this.headers['x-forwarded-proto']}${myurl}`;
}
if (this.headers[":scheme"] === "https") {
return `https${myurl}`;
} else {
return `http${myurl}`;
}
}
};
return Request;
});