Sha256: 69433712836e20f88f95378dffff1e193c0992aea83a28fedfeaa5ca875359d4

Contents?: true

Size: 1.38 KB

Versions: 26

Compression:

Stored size: 1.38 KB

Contents

/*!
 * Ext JS Connect
 * Copyright(c) 2010 Sencha Inc.
 * MIT Licensed
 */

/**
 * Module dependencies.
 */

var http = require('http'),
    Buffer = require('buffer').Buffer;
var resProto = http.ServerResponse.prototype;

/**
 * Respond with custom status code
 * if the message is a non-buffer object, send it as JSON
 * otherwise send it as text/plain.
 * defaultType can override the text/plain mime.
 *
 * @param  {Number} code
 * @param  message
 * @param  {String} defaultType
 * @api public
 */
resProto.simpleBody = function(code, message, extraHeaders) {
    var length;
    var encoding;
    var type = "text/plain; charset=utf8";
    if (typeof message === 'object' && !(message instanceof Buffer)) {
        message = JSON.stringify(message);
        type = "application/json; charset=utf8";
    }
    message = message || "";
    length = message.length;
    if (typeof message === 'string') {
        length = Buffer.byteLength(message);
        encoding = "utf8";
    }
    var headers = {
        "Content-Type": type,
        "Content-Length": length
    };
    if (extraHeaders) {
        if (typeof extraHeaders === 'string') {
            headers["Content-Type"] = extraHeaders;
        } else {
            extraHeaders.forEach(function (value, key) {
                headers[key] = value;
            });
        }
    }
    this.writeHead(code, headers);
    this.end(message, encoding);
};

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
vulcan-0.8.2 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.8.1 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.8.0 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.7.2 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.7.1 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.7.0 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.6.1 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.6.0 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.5.0 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.4.0 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.3.0 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.2.5 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.2.4 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.2.3 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.2.2 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.2.1 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.2.0 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.1.6 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.1.5 server/node_modules/connect-form/support/connect/lib/connect/response.js
vulcan-0.1.4 server/node_modules/connect-form/support/connect/lib/connect/response.js