mirror of
https://github.com/tenrok/axios.git
synced 2026-06-23 20:40:40 +03:00
Adding SSL support for node.js - #12
This commit is contained in:
@@ -3,7 +3,9 @@ var defaults = require('./../defaults');
|
|||||||
var transformData = require('./../transformData');
|
var transformData = require('./../transformData');
|
||||||
var utils = require('./../utils');
|
var utils = require('./../utils');
|
||||||
var http = require('http');
|
var http = require('http');
|
||||||
|
var https = require('https');
|
||||||
var url = require('url');
|
var url = require('url');
|
||||||
|
var pkg = require('./../../package.json');
|
||||||
var Buffer = require('buffer').Buffer;
|
var Buffer = require('buffer').Buffer;
|
||||||
|
|
||||||
module.exports = function httpAdapter(resolve, reject, config) {
|
module.exports = function httpAdapter(resolve, reject, config) {
|
||||||
@@ -21,6 +23,9 @@ module.exports = function httpAdapter(resolve, reject, config) {
|
|||||||
config.headers || {}
|
config.headers || {}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// Set User-Agent (required by some servers)
|
||||||
|
headers['User-Agent'] = 'node-axios/' + pkg.version;
|
||||||
|
|
||||||
if (data) {
|
if (data) {
|
||||||
if (utils.isArrayBuffer(data)) {
|
if (utils.isArrayBuffer(data)) {
|
||||||
data = new Buffer(new Uint8Array(data));
|
data = new Buffer(new Uint8Array(data));
|
||||||
@@ -29,6 +34,7 @@ module.exports = function httpAdapter(resolve, reject, config) {
|
|||||||
} else {
|
} else {
|
||||||
return reject(new Error('Data after transformation must be a string or an ArrayBuffer'));
|
return reject(new Error('Data after transformation must be a string or an ArrayBuffer'));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add Content-Length header if data exists
|
// Add Content-Length header if data exists
|
||||||
headers['Content-Length'] = data.length;
|
headers['Content-Length'] = data.length;
|
||||||
}
|
}
|
||||||
@@ -44,7 +50,8 @@ module.exports = function httpAdapter(resolve, reject, config) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// Create the request
|
// Create the request
|
||||||
var req = http.request(options, function (res) {
|
var transport = parsed.protocol === 'https:' ? https : http;
|
||||||
|
var req = transport.request(options, function (res) {
|
||||||
var responseText = '';
|
var responseText = '';
|
||||||
res.on('data', function (chunk) {
|
res.on('data', function (chunk) {
|
||||||
responseText += chunk;
|
responseText += chunk;
|
||||||
|
|||||||
Reference in New Issue
Block a user