lenye_base
Version:
基础方法
50 lines (40 loc) • 1.3 kB
JavaScript
;
var ifnodeorbrowser = require('./ifnodeorbrowser.js');
require('./is_typeof.js');
var to_json = require('./to_json.js');
var http_posasynct = {};
if (ifnodeorbrowser === 'node') {
var http = require("http");
http_posasynct = function (url, data, callback) {
var err = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : console.error;
var req = http.request({
method: 'POST',
path: url,
timeout: 5000,
headers: {
"Content-Type": 'application/json'
}
}, function (res) {
res.on('data', function (data) {
callback(to_json(data));
}).on('end', function () {});
}).on('error', function (e) {
err(e);
});
req.write(data);
req.end();
};
} else {
http_posasynct = function (url, data, callback) {
var err = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : console.error;
var request = new XMLHttpRequest();
request.timeout = 5000;
request.open('POST', url);
request.setRequestHeader('Content-type', 'application/json; charset=utf-8');
request.onload = () => callback(to_json(request.responseText));
request.onerror = () => err(request);
request.send(data);
};
}
var httpPost = http_posasynct;
module.exports = httpPost;