Date.prototype.Format = function (fmt) {
var o = {
"M+": this.getMonth() + 1, //月份
"d+": this.getDate(), //日
"h+": this.getHours(), //小时
"m+": this.getMinutes(), //分
"s+": this.getSeconds(), //秒
"q+": Math.floor((this.getMonth() + 3) / 3), //季度
"S": this.getMilliseconds() //毫秒
};
if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o)
if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
return fmt;
}
var HTTP = cc.Class({
extends: cc.Component,
statics: {
url: URL,
sendRequest: function (path, data, handler, extraUrl) {
var xhr = cc.loader.getXMLHttpRequest();
xhr.timeout = 20000;
var str = "?";
for (var k in data) {
if (str != "?") {
str += "&";
}
str += k + "=" + data[k];
}
if (extraUrl == null) {
extraUrl = HTTP.url;
}
var requestURL = extraUrl + path + encodeURI(str);
console.log("RequestURL:" + requestURL);
xhr.open("GET", requestURL, true);
if (cc.sys.isNative) {
xhr.setRequestHeader("Accept-Encoding", "gzip,deflate", "text/html;charset=UTF-8");
}
xhr.onreadystatechange = function () {
if (xhr.readyState === 4 && (xhr.status >= 200 && xhr.status < 300)) {
console.log("http res(" + xhr.responseText.length + "):" + xhr.responseText);
try {
var ret = JSON.parse(xhr.responseText);
if (handler !== null) {
handler(ret);
} /* code */
} catch (e) {
cc.log("err:" + e);
//handler(null);
}
finally {
//你想干啥
}
}
};
xhr.send();
return xhr;
},
},
});