请高手帮忙还原restful接口
这种写法看不懂,请高手帮忙还原restful接口,实在 是找不出原来的headers
! function(a, b) {
b.login = function(b, c) {
c = c || a.noop, b = b || {}, b.account = b.account || "", b.password = b.password || "";
var d = new httpRequest;
return d.addData("username", b.account), d.addData("password", b.password), d.post("authorization", function(a) {
200 == a.code && (plus.storage.setItem("username", b.account), plus.storage.setItem("password", b.password), plus.storage.setItem("uid", a.data_1.uid), plus.storage.setItem("user_info", JSON.stringify(a.data_1)), app.createState(a.data.open_id, a.data.auth, function() {
var a = app.getSettings();
a.autoLogin = !0, app.setSettings(a)
})), c(a)
}), !1
}, b.getUserInfo = function(b, c) {
c = c || a.noop, b = b || "";
var d = new httpRequest;
return d.get("user/" + b, function(a) {
b == JSON.parse(plus.storage.getItem("user_info")).uid && (plus.storage.setItem("user_info", JSON.stringify(a.data)), plus.storage.setItem("uid", a.data.uid)), c(a)
}), !1
}, b.logout = function(b) {
b = b || a.noop, plus.storage.removeItem("password"), plus.storage.removeItem("user_info"), plus.storage.removeItem("uid"), plus.storage.removeItem("$state");
var c = app.getSettings();
return c.autoLogin = !1, app.setSettings(c), b(), !1
}, b.createState = function(a, c, d) {
var e = b.getState();
return e.uid = c.uid, e.open_id = a, b.setState(e), d()
}, b.reg = function(b, c) {
c = c || a.noop, b = b || {}, b.username = b.username || "", b.password = b.password || "", b.nickname = b.nickname || "", b.email = b.email || "", b.mobile = b.mobile || "", b.reg_verify = b.reg_verify || "", b.reg_type = b.reg_type || "", b.role = b.role || "";
var d = app.getConfig("reg"),
e = d.NICKNAME_MIN_LENGTH,
f = d.NICKNAME_MAX_LENGTH,
g = d.USERNAME_MIN_LENGTH,
h = d.USERNAME_MAX_LENGTH,
i = d.EMAIL_VERIFY_TYPE,
j = d.MOBILE_VERIFY_TYPE;
if ("username" == b.reg_type && (b.username.length < g || b.username.length > h)) return c("用户名长度在" + g + "-" + h + "之间");
if (b.nickname.length < e || b.nickname.length > f) return c("昵称长度在" + e + "-" + f + "之间");
if (!("email" != b.reg_type && "mobile" != b.reg_type || "" != b.reg_verify || 2 != i && 1 != j)) return c("验证码不能为空");
var k = new Object;
if (k.Email = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/, k.Phone = /^(1[3|4|5|8])[0-9]{9}$/, "email" == b.reg_type && !k.Email.test(b.email)) return c("请输入正确的邮箱");
if ("mobile" == b.reg_type && !k.Phone.test(b.mobile)) return c("请输入正确的手机");
if (b.password.length < 6) return c("密码不少于6个字节");
var l = new httpRequest;
return l.addData("username", b.username), l.addData("email", b.email), l.addData("mobile", b.mobile), l.addData("nickname", b.nickname), l.addData("password", b.password), l.addData("reg_verify", b.reg_verify), l.addData("reg_type", b.reg_type), l.addData("role", b.role), l.post("account", function(a) {
c(a)
}), !1
}, b.uploadPic = function(b, c) {
c = c || a.noop, b = b || {}, b.data = b.data || "";
var d = new httpRequest;
return d.addData("data", b.data), d.post("picture", function(a) {
c(a)
}), !1
}, b.sendVerify = function(b, c) {
if (c = c || a.noop, b = b || {}, b.account = b.account || "", b.type = b.type || "", b.open_id = b.open_id || "", "" == b.account) return c("帐号不能为空");
if ("" == b.type) return c("参数错误");
var d = new httpRequest;
return d.addData("account", b.account), d.addData("type", b.type), d.addData("open_id", b.open_id), d.post("reg_verify", function(a) {
c(a)
}), !1
}, b.getState = function() {
var a = plus.storage.getItem("$state") || "{}";
return JSON.parse(a)
}, b.setState = function(a) {
a = a || {}, plus.storage.setItem("$state", JSON.stringify(a))
};
var c = function(a) {
return a = a || "", a.length > 3 && a.indexOf("@") > -1
};
b.forgetPassword = function(b, d) {
return d = d || a.noop, c(b) ? d(null, "新的随机密码已经发送到您的邮箱,请查收邮件。") : d("邮箱地址不合法")
}, b.setSettings = function(a) {
a = a || {}, plus.storage.setItem("$settings", JSON.stringify(a))
}, b.getSettings = function() {
var a = plus.storage.getItem("$settings") || "{}";
return JSON.parse(a)
}, b.getConfig = function(b, c) {
c = c || a.noop;
var d = cache.getCache(b + "_config");
if (null == d) {
var e = new httpRequest;
e.addData("name", b), e.get("config", function(a) {
d = a.data, cache.setCache(b + "config", a.data), c(a.data)
}, !1)
} else c(d);
return d
}, b.support = function(b, c) {
var d = app.getState();
b = b || {}, c = c || a.noop, b.appname = b.appname || "", b.table = b.table || "", b.jump = b.jump || "", b.row = b.row || "";
var e = new httpRequest;
return e.addData("appname", b.appname), e.addData("table", b.table), e.addData("row", b.row), e.addData("jump", b.jump), e.addData("open_id", d.open_id || ""), e.post("support", function(a) {
c(a)
}), !1
}, b.mySupport = function(b, c) {
var d = app.getState();
b = b || {}, c = c || a.noop, b.appname = b.appname || "", b.table = b.table || "";
var e = new httpRequest;
e.addData("appname", b.appname), e.addData("table", b.table), e.addData("open_id", d.open_id || ""), e.get("my_support", function(a) {
c(a)
}, !1)
}, b.oauth = function(b, c) {
b = b || {}, c = c || a.noop, b.auth_result = b.auth_result || "", b.user_info = b.user_info || "", b.bind_info = b.bind_info || "", b.type = b.type || "";
var d = new httpRequest;
d.addData("auth_result", b.auth_result), d.addData("user_info", b.user_info), d.addData("bind_info", b.bind_info), d.addData("type", b.type), d.post("oauth", function(a) {
c(a)
}, !1)
}, b.versions = function(a) {
a = a || mui.noop;
var b = new httpRequest;
b.get("versions", function(b) {
a(b)
})
}
}(mui, window.app = {});
var apptools = {
finish: function(a) {
a.close()
},
delayWindow: function(a) {
setTimeout(function() {
a.isVisible() || (plus.nativeUI.closeWaiting(), mui.currentWebview.show("slide-in-right", 200))
}, 3e3), a.addEventListener("loadedEvent", function(b) {
event.detail.is_ok && !a.isVisible() && (plus.nativeUI.closeWaiting(), mui.currentWebview.show("slide-in-right", 200))
})
}
},
httpRequest = function() {
var a = this;
a.data = {}, a.host = "http://os.baidu.cn/api/", a.addData = function(b, c) {
a.data[b] = c
}, a.request = function(b, c, d, e) {
e = null == e ? !0 : e;
var f = new FormData;
f.append("method", c), f.append("access_token", "f9c96961902f533121180b081fadf89c");
for (key in a.data) f.append(key, a.data[key]);
var g = new XMLHttpRequest;
g.onreadystatechange = function() {
4 == g.readyState && d(JSON.parse(g.responseText))
}, g.open("POST", a.host + b, e), g.send(f)
}, a.get = function(b, c, d) {
a.request(b, "GET", c, d)
}, a.post = function(b, c, d) {
a.request(b, "POST", c, d)
}, a.put = function(b, c, d) {
a.request(b, "PUT", c, d)
}, a["delete"] = function(b, c, d) {
a.request(b, "DELETE", c, d)
}
},
toast = {
info: function(a) {
mui.toast(a)
},
showLoading: function(a) {
plus.nativeUI.showWaiting(a)
},
hideLoading: function() {
plus.nativeUI.closeWaiting()
}
},
is_login = function() {
var a = app.getSettings(),
b = app.getState();
return a.autoLogin && b.open_id ? b.uid : 0
},
get_from = function() {
return plus.device.model
},
get_parent_node = function(a, b) {
var c = b.substring(0, 1);
if ("." == c) var d = b.substr(1),
e = a.parentNode.classList.contains(d);
if ("#" == c) var f = b.substr(1),
e = a.parentNode.getAttribute("id") == f;
if ("." != c && "#" != c) var e = a.parentNode.nodeName == b;
return e ? a.parentNode : get_parent_node(a.parentNode, b)
};
String.prototype.parseContent = function() {
return this.parseExpression()
}, String.prototype.parseExpression = function() {
var a = this,
b = a.replace(/\[(.+?)\]/g, '<img class="expression_img" data-src="../../images/expression/miniblog/$1.gif" src="../../images/expression/miniblog/$1.gif"/>');
return b
}, Element.prototype.createExpression = function(a) {
function b(a) {
var b = 0;
if (document.selection) {
a.focus();
var c = document.selection.createRange();
c.moveStart("character", -a.value.length), b = c.text.length
} else(a.selectionStart || "0" == a.selectionStart) && (b = a.selectionStart);
return b
}
function c(a, b) {
if (a.setSelectionRange) a.setSelectionRange(b, b);
else if (a.createTextRange) {
var c = a.createTextRange();
c.collapse(!0), c.moveEnd("character", b), c.moveStart("character", b), c.select()
}
a.blur()
}
var d = this;
d.option = a, d.expressionList = [], d.addEventListener("tap", function() {
if ("none" == d.option.showDiv.style.display) {
d.option.showDiv.style.display = "block";
var a = document.createElement("div");
a.setAttribute("class", "mui-slider"), d.option.showDiv.appendChild(a);
var e = document.createElement("div");
e.setAttribute("class", "mui-slider-group mui-slider-loop"), a.appendChild(e);
var f = document.createElement("div");
f.setAttribute("class", "mui-slider-indicator"), a.appendChild(f), plus.io.resolveLocalFileSystemURL("_www/images/expression/miniblog", function(a) {
var b = a.createReader();
b.readEntries(function(a) {
var b, c, g, h = "",
i = "",
j = a.length,
k = [];
mui.os.android && (a = a.reverse());
for (var l = 0; j > l; l += 20) k.push(a.slice(l, l + 20));
for (var m = 0; m < k.length; m++) {
c = '<div class="mui-slider-item" style="height: 170px;">', i += 0 == m ? '<div class="mui-indicator mui-grid-view mui-active"></div>' : '<div class="mui-indicator mui-grid-view"></div>';
for (var n = 0; n < k[m].length; n++) {
var o = k[m][n].name.replace(".gif", "");
d.expressionList.push("[" + o + "]"), c += '<div style="float:left; padding:8px; width:14%" class="expression_tap" data-title="' + o + '"><img data-src="' + k[m][n].toRemoteURL() + '" src="' + k[m][n].toRemoteURL() + '"></div>'
}
c += '<div style="float:right;padding:11px 22px 10px 10px;width:14%" class="del_expression"><img data-src="../../images/resize.png" src="../../images/resize.png" style="margin-top:4px;"></div>', c += "</div>", h += c, 0 == m && (b = c), m + 1 == k.length && (g = c)
}
e.innerHTML = g + h + b, f.innerHTML = i;
var p = mui(".mui-slider");
p.slider({
interval: 0
}), mui.os.ios && document.querySelector(".mui-slider").addEventListener("scrollend", function(a) {
for (var b = a.detail.slideNumber, c = d.option.showDiv.getElementsByClassName("mui-slider-item")[b + 1].getElementsByTagName("img"), e = 0; e < c.length; e++) c[e].setAttribute("src", c[e].getAttribute("data-src") + "?t=" + Math.random())
})
}, function(a) {
console.log("Read entries failed: " + a.message)
})
}, function(a) {
console.log("Resolve file URL failed: " + a.message)
}), mui(".mui-slider").on("tap", ".expression_tap", function(a) {
var e = this.getAttribute("data-title"),
f = d.option.target,
g = b(f),
h = f.value;
f.value = h.substring(0, g) + "[" + e + "]" + h.substring(g), c(f, g + 2 + e.length)
}), mui(".mui-slider").on("tap", ".del_expression", function(a) {
var c = d.option.target,
e = b(c),
f = c.value,
g = f.substring(0, e),
h = f.substring(e),
i = g.substr(g.length - 1, 1);
if ("]" != i) g = g.substring(0, g.length - 1);
else {
var j = g.lastIndexOf("["),
k = g.substring(j);
g = d.expressionList.indexOf(k) > -1 ? g.substring(0, j) : g.substring(0, g.length - 1)
}
c.value = g + h
})
}
}), d.option.target.addEventListener("tap", function() {
d.option.showDiv.style.display = "none", d.option.showDiv.innerHTML = ""
})
};
var get_expression_list = function() {
var a = plus.storage.getItem("expression_list");
return null == a && plus.io.resolveLocalFileSystemURL("_www/images/expression/miniblog", function(b) {
var c = b.createReader();
c.readEntries(function(b) {
a = {}, mui.os.android && (b = b.reverse());
for (var c = 0; c < b.length; c++) {
var d = b[c].name.replace(".gif", "");
a[d] = b[c].toRemoteURL()
}
a = JSON.stringify(a), plus.storage.setItem("expression_list", a)
}, function(a) {
console.log("Read entries failed: " + a.message)
})
}, function(a) {
console.log("Resolve file URL failed: " + a.message)
}), JSON.parse(a)
},
get_expression = function(a) {
var b = get_expression_list();
return b[a] + "?t=" + Math.random()
},
get_role = function() {
var a = cache.getCache("role");
if (null == a) {
var b = new httpRequest;
b.get("role", function(a) {
404 == a.code && (cache.setCache("role", a.data), show_role(a.data))
})
} else show_role(a)
},
show_role = function(a) {
var b = new mui.PopPicker,
c = document.getElementById("showUserType"),
d = document.getElementById("role_id");
c.innerHTML = a[0].title, d.value = a[0].id;
var e = [];
for (var f in a) e[f] = {
value: a[f].id,
text: a[f].title
};
b.setData(e), c.addEventListener("tap", function(a) {
b.show(function(a) {
d.value = a[0].value, console.log(a[0].value), c.innerHTML = a[0].text
})
}, !1)
},
after_reg = function(a) {
"object" == typeof a ? (toast.info(a.info), 200 == parseInt(a.code) && mui.openWindow({
url: "login.html",
id: "login",
show: {
aniShow: "pop-in"
},
styles: {
popGesture: "hide"
},
waiting: {
autoShow: !1
}
})) : toast.info(a), toast.hideLoading()
},
DecTime = {
obj: 0,
time: 0,
dec_time: function() {
this.time > 0 ? (this.obj.innerHTML = this.time--+"S", setTimeout("DecTime.dec_time()", 1e3)) : (this.obj.innerHTML = "验证手机", this.obj.disabled = !1)
}
};
Element.prototype.createUploader = function(a) {
var b = this;
b.option = a, b.option.limit = b.option.limit || 9, b.option.title = b.option.title || "上传图片";
var c = document.createElement("input");
c.setAttribute("type", "hidden"), c.setAttribute("name", b.option.input_name), b.appendChild(c), b.inputNode = c, b.addEventListener("tap", function() {
var a = [{
title: "拍照"
}, {
title: "从手机相册选择"
}];
plus.nativeUI.actionSheet({
title: b.option.title,
cancel: "取消",
buttons: a
}, function(a) {
switch (a.index) {
case 0:
break;
case 1:
var c = plus.camera.getCamera();
c.captureImage(function(a) {
plus.io.resolveLocalFileSystemURL(a, function(a) {
a.file(function(a) {
b.showImg(a)
})
}, function(a) {
console.log("读取拍照文件错误:" + a.message)
})
}, function(a) {
console.log("error" + a)
}, {});
break;
case 2:
plus.gallery.pick(function(a) {
if ("string" == typeof a) plus.io.resolveLocalFileSystemURL(a, function(a) {
a.file(function(a) {
b.showImg(a)
})
});
else
for (var c = 0; c < a.files.length; c++) plus.io.resolveLocalFileSystemURL(a.files[c], function(a) {
a.file(function(a) {
b.showImg(a)
})
})
}, function() {}, {
filter: "image",
multiple: b.option.multiple
})
}
})
}), b.showImg = function(a) {
var c = b.inputNode.value.split(","),
d = 0;
if ("" != b.inputNode.value && (d = c.length), d < b.option.limit || 1 == b.option.limit) {
var e = new plus.io.FileReader;
e.readAsDataURL(a), e.onloadend = function(a) {
var d = a.target.result,
e = {
data: d
};
toast.showLoading("上传图片中..."), app.uploadPic(e, function(a) {
if (toast.hideLoading(), "object" == typeof a)
if (200 == a.code)
if (-1 == c.indexOf(a.data.id)) {
b.updateAttachValue("add", a.data.id, b.inputNode);
var e = document.getElementById(b.option.showDiv),
f = document.createElement("div");
f.setAttribute("style", "display: inline-block"), 1 == b.option.limit && (e.innerHTML = ""), e.appendChild(f);
var g = document.createElement("img");
g.setAttribute("src", d), g.setAttribute("style", "width: 100px; height: 100px;margin-right:2px;"), g.setAttribute("data-preview-src", d), g.setAttribute("data-preview-group", 1), f.appendChild(g);
var h = document.createElement("span");
h.setAttribute("class", "mui-icon mui-icon-close img-close-btn"), h.setAttribute("picture_id", a.data.id), h.setAttribute("id", "picture_" + a.data.id), f.appendChild(h), b.bindCloseBtn(a.data.id), mui.previewImage()
} else toast.info("图片已在队列中");
else toast.info(a.info);
else toast.info(a.info)
})
}
} else toast.info("超出图片限制")
}, b.updateAttachValue = function(a, c, d) {
if (1 == b.option.limit) return "add" === a ? d.value = c : d.value = "", d.value;
var e = d.value,
f = e.split(","),
g = [];
for (var h in f) "" !== f[h] && f[h] !== c.toString() && g.push(f[h]);
return "add" === a && g.push(c), d.value = g.join(","), g
}, b.bindCloseBtn = function(a) {
document.getElementById("picture_" + a).addEventListener("tap", function() {
this.parentNode.remove(), b.updateAttachValue("del", a, b.inputNode)
})
}
};
//载入配置文件--由于文件路径不统一。所以暂时先两个一起载入。以后能获取根目录时修改 todo
document.write("<script language='javascript' src='../../config.js'></script>");
document.write("<script language='javascript' src='config.js'></script>");
var httpRequest = function () {
var $this = this;
$this.data = {};
$this.host = api_host;
$this.addData = function (key, value) {
$this.data[key] = value;
};
$this.request = function (url, method, callback, asynch) {
asynch = asynch == null ? true : asynch;
var data = new FormData();
data.append('method', method);
data.append('access_token', 'f9c96961902f533121180b081fadf89c'); //todo 将access_token隐藏掉
for (key in $this.data) {
data.append(key, $this.data[key]);
}
// var XML =new plus.net.XMLHttpRequest();
var XML = new XMLHttpRequest();
XML.onreadystatechange = function () {
if (XML.readyState == 4) {
callback(JSON.parse(XML.responseText));
}
};
XML.open('POST', $this.host + url, asynch);
XML.send(data);
};
$this.get = function (url, callback, asynch) {
$this.request(url, 'GET', callback, asynch)
};
$this.post = function (url, callback, asynch) {
$this.request(url, 'POST', callback, asynch)
};
$this.put = function (url, callback, asynch) {
$this.request(url, 'PUT', callback, asynch)
};
$this.delete = function (url, callback, asynch) {
$this.request(url, 'DELETE', callback, asynch)
}
};
var toast = {
info: function (msg) {
mui.toast(msg);
},
showLoading: function (msg) {
plus.nativeUI.showWaiting(msg);
},
hideLoading: function () {
plus.nativeUI.closeWaiting();
}
};
var is_login = function () {
var settings = app.getSettings();
var state = app.getState();
if (settings.autoLogin && state.open_id) {
return state.uid;
} else {
return 0;
}
};
var get_from = function () {
return plus.device.model;
};
var get_parent_node = function ($this, find) {
var first = find.substring(0, 1);
if (first == '.') {
var class_name = find.substr(1);
var check = $this.parentNode.classList.contains(class_name);
}
if (first == '#') {
var id_name = find.substr(1);
var check = $this.parentNode.getAttribute('id') == id_name;
}
if (first != '.' && first != '#') {
var check = $this.parentNode.nodeName == find;
}
if (check) {
return $this.parentNode;
} else {
return get_parent_node($this.parentNode, find);
}
};
String.prototype.parseContent = function () {
return this.parseExpression();
};
String.prototype.parseExpression = function () {
var string = this;
//var content = string.replace(/\[(.+?)\]/g, '<img class="expression_img" data-src="../../images/expression/miniblog/$1.gif" src="../../images/expression/miniblog/$1.gif"/>'); // todo 暂时使用相对路径
var content = string.replace(/\[(.+?)\]/g, function(find){
find = find.replace('[','').replace(']','');
if(find.indexOf(':') == -1 ){
return ' <img class="expression_img" data-src="../../images/expression/miniblog/'+find+'.gif" src="../../images/expression/miniblog/'+find+'.gif"/>';
}else{
return '['+find+']'
}
});
return content;
};
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
= =其实我觉得不是大家不想帮。。是真没看懂问题。。
代(wan)码(quan)很(kan)漂(bu)亮(dong)
是不是混淆过了