UNPKG

1.46 kBJavaScriptView Raw
1"use strict";
2/*!
3 * Simple Node Mobile Portal
4 * Copyright(c) 2012-2017 Faisal(admin@simpleportaljs.com)
5 *
6 * MIT Licensed
7 */
8var util=require("./../util"),http=require("http");var response=exports=module.exports={};response.send=function(b,c,a){if(c&&!(c["content-type"]||c["Content-Type"])){if(this.getHeader("Content-Type")){c["Content-Type"]=this.getHeader("Content-Type")}else{if(this.contentType()){c["Content-Type"]=this.contentType()+"; charset=UTF-8"}else{c["Content-Type"]="text/html; charset=UTF-8"}}}this.writeHead(b,c);this.write(a||"");this.end()};response.contentType=function(a){if(a){this.content_type=a}return this.content_type};response.json=function(a,b){util.sendServiceResponse(this,b,a)};response.redirect=function(b,d,h){var c="/",d=d||302,i="HEAD"==h.method,e;var a={back:h.header("Referrer",c),home:c};a.__proto__={};var g="function"==typeof a[b]?a[b](h,this):a[b];b=g||b;if(!~b.indexOf("://")){if("/"!=c&&0!=b.indexOf(c)){b=c+b}var j=h.headers.host,f=h.connection.encrypted;b="http"+(f?"s":"")+"://"+j+b}if(h.accepts("html")){e="<p>"+http.STATUS_CODES[d]+'. Redirecting to <a href="'+b+'">'+b+"</a></p>";this.header("Content-Type","text/html")}else{e=http.STATUS_CODES[d]+". Redirecting to "+b;this.header("Content-Type","text/plain")}this.statusCode=d;this.header("Location",b);this.end(i?null:e)};response.set=response.header=function(a,b){if(1==arguments.length){return this.getHeader(a)}this.setHeader(a,b);return this};
\No newline at end of file