redbbs-pro/apidoc.html
2019-05-01 11:11:42 +08:00

111 lines
22 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html>
<head>
<meta charset="UTF-8"><title>接口文档(apidoc生成)</title>
<style type="text/css">
body {text-align: center;margin:auto;}
a{text-decoration: none;}
.table {margin: auto;border-collapse: collapse;border-spacing: 0;display: block;width: 100%;overflow: auto;word-break: normal;word-break: keep-all;}
.table td,.table th{padding: 0.2rem 0.8rem 0.2rem 0.8rem;border: 1px solid #aaa;}
.table td {text-align: left;}
.s {font-size: 0.8rem; vertical-align: middle;}
.subtable {border-spacing: 0;border: 0;margin:0;}
.subtable td{border: 0;padding: 0 0 0 10px;}
.typetable {border-spacing: 0;border: 0;margin:0;}
.typetable td{border: 0;padding: 2px 20px 2px 10px;}
.typetable .l{border-bottom: 1px solid red;}
</style>
</head>
<body>
<script>
var createhtml = function (jsoncontent) {
var classmap = jsoncontent.types;
var html = [];
html.push('<div style="width:' + Math.floor(window.screen.width * 0.7) + 'px;margin:0 auto;text-align: center;">');
html.push('<br/><br/><table class="table" align="center">');
for (var i = 0; i < jsoncontent.servers.length; i++) {
var servlets = jsoncontent.servers[i].servlets;
if (servlets.length && (servlets[0].comment || "").indexOf("【") === 0) {
servlets.sort(function (a, b) {
return a.comment > b.comment ? -1 : (a.comment == b.comment ? 0 : 1);
});
}
for (var j = 0; j < servlets.length; j++) {
var servlet = servlets[j];
if (html.length > 2) html.push(' <tr><th colspan="5" style="border-bottom:0;">&nbsp;</th></tr>');
html.push(' <tr><th colspan="5" style="border-top:' + ((html.length > 2) ? 0 : 1) + ';">' + (servlet.comment || '未知模块') + '</th></tr>');
html.push(' <tr><th>请求URL</th><th>描 述</th><th>鉴 权</th><th>参 数 <span style="font-size:12px;">(粗体: 必填项; 红色: Header; 蓝色: Cookie)</span></th><th>输 出</th></tr>');
for (var k = 0; k < servlet.mappings.length; k++) {
var action = servlet.mappings[k];
html.push(' <tr>');
html.push('<td style="color:#ff00ff;">' + action.url + '</td>');
html.push('<td>' + action.comment + '</td>');
html.push('<td class="s" style="width:80px;">模块ID: ' + servlet.moduleid + '<br/>操作ID: ' + action.actionid + '<br/>需鉴权: ' + (action.auth ? '<font style="font-weight:bold;color:green;">true</font>' : '<font color=red>false</font>') + '</td>');
var paramshtml = [];
paramshtml.push('<table class="subtable">');
for (var p = 0; p < action.params.length; p++) {
var param = action.params[p];
var t = param.type.substring(param.type.lastIndexOf('.') + 1);
if (classmap[param.type.replace('[]', '')]) {
t = '<a href="#' + param.type.replace('[]', '') + '">' + t + '</a>';
}
if (param.name == '&') {
paramshtml.push('<tr><td style="font-size:12px;">内置 </td><td> ' + t + '</td><td> 当前用户</td></tr>');
} else {
var w = param.required ? "font-weight:bold;" : "";
var c = ' style="' + w + '"';
if (param.src == "HEADER") c = ' style="color:red;' + w + '"';
if (param.src == "COOKIE") c = ' style="color:blue;' + w + '"';
paramshtml.push('<tr><td ' + c + '> ' + param.name + ' </td><td> ' + t + '</td><td> ' + param.comment + '</td></tr>');
}
}
paramshtml.push('</table>');
html.push('<td class="s" style="padding:0 5px;">' + paramshtml.join('') + '</td>');
var rs = [];
rs.push(action.result.replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/([a-zA-Z0-9_\$]+\.)+/g, ""));
var results = action.results || [];
for (var r = 0; r < results.length; r++) {
rs.push('<a href="#' + results[r].replace('[]', '') + '">' + results[r].replace(/([a-zA-Z0-9_\$]+\.)+/g, "") + '</a>');
}
html.push('<td>' + rs.join("<br/>") + '</td>');
html.push('</tr>');
}
}
}
for (var type in classmap) {
html.push(' <tr><th colspan="5" style="border-bottom:0;">&nbsp;</th></tr>');
html.push(' <tr id="' + type + '"><th colspan="5" style="border-top:0;">' + type + '</th></tr>');
html.push(' <tr><td colspan="5"><table class="typetable">');
for (var fieldname in classmap[type]) {
var field = classmap[type][fieldname];
var t = field.type.replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/\$/g, ".").replace(/([a-zA-Z0-9_\$]+\.)+/g, "");
if (t == 'boolean' || t == 'short' || t == 'int' || t == 'long' || t == 'float' || t == 'double'
|| t == 'boolean[]' || t == 'short[]' || t == 'int[]' || t == 'long[]' || t == 'float[]' || t == 'double[]') {
t = '<font color=blue>' + t + '</font>';
} else if (t == 'String' || t == 'String[]' || t == 'LongRange' || t.indexOf('Map&lt;') === 0) {
t = '<font color=red>' + t + '</font>';
}
var c = (field.comment || '');
if (field.primary) {
c = '【主键】 ' + c;
} else if (!field.updatable) {
c = '【只读】 ' + c;
}
html.push(' <tr class="l"><td>' + fieldname + '</td><td>' + t + '</td><td colspan="2">' + c + '</td></tr>');
}
html.push(' </table></td></tr>');
}
html.push('</table><br/><br/><br/>');
html.push('</div>');
return html.join('');
};
</script>
<script>
var jsoncontent = {"servers":[{"address":"0.0.0.0:80","servlets":[{"urlregs":["/","/project"],"moduleid":0,"name":"","comment":"首页一级菜单入口","mappings":[{"url":"/","auth":false,"actionid":0,"comment":"社区首页","params":[],"results":[],"result":"Object"},{"url":"/project","auth":false,"actionid":0,"comment":"项目首页","params":[],"results":[],"result":"Object"},{"url":"/site","auth":false,"actionid":0,"comment":"网站首页","params":[],"results":[],"result":"Object"}]},{"urlregs":["/jie","/jie/*","/column","/column/*"],"moduleid":0,"name":"","comment":"文章帖子入口","mappings":[{"url":"/column","auth":false,"actionid":0,"comment":"帖子栏目","params":[],"results":[],"result":"Object"},{"url":"/jie","auth":false,"actionid":0,"comment":"问答列表","params":[],"results":[],"result":"Object"},{"url":"/jie/add","auth":true,"actionid":0,"comment":"发表/编辑问答","params":[{"name":"#","radix":10,"type":"int","src":"PARAMETER","comment":"内容ID","required":true}],"results":[],"result":"Object"},{"url":"/jie/detail","auth":false,"actionid":0,"comment":"问答详情","params":[],"results":[],"result":"Object"}]},{"urlregs":["/os/comment/save","/os/comment/support","/os/comment/query"],"moduleid":0,"name":"","comment":"评论服务","mappings":[{"url":"/os/comment/query","auth":false,"actionid":0,"comment":"查询评论","params":[{"name":"sessionid","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true},{"name":"contentId","radix":10,"type":"int","src":"PARAMETER","comment":"","required":true},{"name":"flipper","radix":10,"type":"org.redkale.source.Flipper","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.util.Sheet<com.lxyer.bbs.comment.CommentInfo>"},{"url":"/os/comment/save","auth":true,"actionid":0,"comment":"评论保存","params":[{"name":"sessionid","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true},{"name":"bean","radix":10,"type":"com.lxyer.bbs.comment.Comment","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.service.RetResult"},{"url":"/os/comment/support","auth":true,"actionid":0,"comment":"点赞","params":[{"name":"sessionid","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true},{"name":"commentid","radix":10,"type":"int","src":"PARAMETER","comment":"","required":true},{"name":"ok","radix":10,"type":"int","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.service.RetResult"}]},{"urlregs":["/os/content/*"],"moduleid":0,"name":"","comment":"文章帖子服务","mappings":[{"url":"/os/content/collect","auth":true,"actionid":0,"comment":"帖子收藏","params":[{"name":"sessionid","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true},{"name":"contentid","radix":10,"type":"int","src":"PARAMETER","comment":"","required":true},{"name":"ok","radix":10,"type":"int","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.service.RetResult"},{"url":"/os/content/collectquery","auth":true,"actionid":0,"comment":"收藏列表","params":[{"name":"sessionid","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.util.Sheet<com.lxyer.bbs.content.ContentInfo>"},{"url":"/os/content/info","auth":false,"actionid":0,"comment":"帖子详情","params":[{"name":"sessionid","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true},{"name":"contentid","radix":10,"type":"int","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"com.lxyer.bbs.content.ContentInfo"},{"url":"/os/content/query","auth":false,"actionid":0,"comment":"内容列表","params":[{"name":"flipper","radix":10,"type":"org.redkale.source.Flipper","src":"PARAMETER","comment":"","required":true},{"name":"actived","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true},{"name":"sessionid","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.util.Sheet<com.lxyer.bbs.content.ContentInfo>"},{"url":"/os/content/save","auth":true,"actionid":0,"comment":"帖子保存","params":[{"name":"bean","radix":10,"type":"com.lxyer.bbs.content.Content","src":"PARAMETER","comment":"","required":true},{"name":"sessionid","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.service.RetResult"},{"url":"/os/content/set","auth":true,"actionid":0,"comment":"便捷的修改内容","params":[{"name":"sessionid","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true},{"name":"id","radix":10,"type":"int","src":"PARAMETER","comment":"","required":true},{"name":"field","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true},{"name":"v","radix":10,"type":"short","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.service.RetResult"},{"url":"/os/content/t","auth":false,"actionid":0,"comment":"测试HttpScope 模板使用","params":[{"name":"sessionid","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.net.http.HttpScope"}]},{"urlregs":["/os/file/upload"],"moduleid":0,"name":"","comment":"文件服务","mappings":[{"url":"/os/file/upload","auth":true,"actionid":0,"comment":"文件上传","params":[{"name":"tmpFile","radix":10,"type":"java.io.File","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.service.RetResult"}]},{"urlregs":["/os/user/*"],"moduleid":0,"name":"","comment":"用户服务","mappings":[{"url":"/os/user/changepwd","auth":true,"actionid":0,"comment":"修改密码","params":[{"name":"sessionid","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true},{"name":"pass","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true},{"name":"nowpass","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.service.RetResult"},{"url":"/os/user/current","auth":true,"actionid":0,"comment":"","params":[{"name":"sessionid","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"com.lxyer.bbs.base.user.UserInfo"},{"url":"/os/user/info","auth":true,"actionid":0,"comment":"用户信息","params":[{"name":"userid","radix":10,"type":"int","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"com.lxyer.bbs.base.user.UserInfo"},{"url":"/os/user/lastReg","auth":true,"actionid":0,"comment":"","params":[],"results":[],"result":"org.redkale.util.Sheet<com.lxyer.bbs.base.user.UserInfo>"},{"url":"/os/user/login","auth":false,"actionid":0,"comment":"登录校验","params":[{"name":"bean","radix":10,"type":"com.lxyer.bbs.base.user.LoginBean","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.service.RetResult<com.lxyer.bbs.base.user.UserInfo>"},{"url":"/os/user/logout","auth":false,"actionid":0,"comment":"退出登录","params":[{"name":"sessionid","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.service.RetResult"},{"url":"/os/user/query","auth":false,"actionid":0,"comment":"用户数据查询","params":[{"name":"flipper","radix":10,"type":"org.redkale.source.Flipper","src":"PARAMETER","comment":"","required":true},{"name":"bean","radix":10,"type":"com.lxyer.bbs.base.user.UserBean","src":"PARAMETER","comment":"过滤条件","required":true}],"results":[],"result":"org.redkale.util.Sheet<com.lxyer.bbs.base.user.UserRecord>"},{"url":"/os/user/register","auth":false,"actionid":0,"comment":"用户注册","params":[{"name":"bean","radix":10,"type":"com.lxyer.bbs.base.user.UserRecord","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.service.RetResult"},{"url":"/os/user/update","auth":true,"actionid":0,"comment":"用户信息修改","params":[{"name":"sessionid","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true},{"name":"bean","radix":10,"type":"com.lxyer.bbs.base.user.UserRecord","src":"PARAMETER","comment":"","required":true},{"name":"columns","radix":10,"type":"java.lang.String[]","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"org.redkale.service.RetResult"},{"url":"/os/user/usercount","auth":false,"actionid":0,"comment":"用户数据统计","params":[],"results":[],"result":"java.lang.Number"}]},{"urlregs":["/os/wx/verifyMPURL"],"moduleid":0,"name":"","comment":"微信管理","mappings":[{"url":"/os/wx/verifyMPURL","auth":false,"actionid":0,"comment":"微信域名验证","params":[{"name":"msgSignature","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true},{"name":"timeStamp","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true},{"name":"nonce","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true},{"name":"echoStr","radix":10,"type":"java.lang.String","src":"PARAMETER","comment":"","required":true}],"results":[],"result":"long"}]},{"urlregs":["/upload","/upload/*"],"moduleid":0,"name":"","comment":"文件管理入口","mappings":[{"url":"/upload/img","auth":false,"actionid":0,"comment":"图片上传","params":[],"results":[],"result":"Object"}]},{"urlregs":["/user","/user/*"],"moduleid":0,"name":"","comment":"用户请求入口","mappings":[{"url":"/user","auth":false,"actionid":0,"comment":"用户首页","params":[],"results":[],"result":"Object"},{"url":"/user/login","auth":false,"actionid":0,"comment":"前往登录页","params":[],"results":[],"result":"Object"},{"url":"/user/reg","auth":false,"actionid":0,"comment":"前往登录页","params":[],"results":[],"result":"Object"},{"url":"/user/set","auth":true,"actionid":0,"comment":"用户设置","params":[],"results":[],"result":"Object"}]}]}],"types":{"com.lxyer.bbs.comment.Comment":{"commentid":{"type":"int","comment":"[评论id]","primary":true,"updatable":true},"userid":{"type":"int","comment":"[评论用户id]","primary":false,"updatable":true},"pid":{"type":"int","comment":"[评论父id]","primary":false,"updatable":true},"cate":{"type":"short","comment":"[评论的类型]","primary":false,"updatable":true},"contentid":{"type":"int","comment":"[被评论内容的id]","primary":false,"updatable":true},"content":{"type":"java.lang.String","comment":"[评论内容]","primary":false,"updatable":true},"createtime":{"type":"long","comment":"[创建时间]","primary":false,"updatable":false},"supportnum":{"type":"int","comment":"[支持数]","primary":false,"updatable":true},"status":{"type":"short","comment":"[状态]1正常-1删除","primary":false,"updatable":true}},"org.redkale.source.Flipper":{"limit":{"type":"int","comment":"每页多少行","primary":false,"updatable":true},"offset":{"type":"int","comment":"记录行的偏移量从0开始","primary":false,"updatable":true},"sort":{"type":"java.lang.String","comment":"排序字段, 可多字段排序","primary":false,"updatable":true}},"com.lxyer.bbs.base.user.UserRecord":{"userid":{"type":"int","comment":"[用户id]","primary":true,"updatable":true},"username":{"type":"java.lang.String","comment":"[登录名]","primary":false,"updatable":true},"password":{"type":"java.lang.String","comment":"[密码]","primary":false,"updatable":true},"sex":{"type":"short","comment":"[性别]默认 10男20女","primary":false,"updatable":true},"phone":{"type":"java.lang.String","comment":"[电话号码]","primary":false,"updatable":true},"nickname":{"type":"java.lang.String","comment":"[昵称]","primary":false,"updatable":true},"avatar":{"type":"java.lang.String","comment":"[头像地址]","primary":false,"updatable":true},"realname":{"type":"java.lang.String","comment":"[真实姓名]","primary":false,"updatable":true},"email":{"type":"java.lang.String","comment":"[邮箱]","primary":false,"updatable":true},"roleid":{"type":"int","comment":"","primary":false,"updatable":true},"site":{"type":"java.lang.String","comment":"[个人博客地址]","primary":false,"updatable":true},"git":{"type":"java.lang.String","comment":"[码云/GitHub]","primary":false,"updatable":true},"createtime":{"type":"long","comment":"[创建时间]","primary":false,"updatable":false},"sign":{"type":"java.lang.String","comment":"[签名]","primary":false,"updatable":true},"city":{"type":"java.lang.String","comment":"[所在城市]","primary":false,"updatable":true},"status":{"type":"short","comment":"[状态]-10删除 10正常","primary":false,"updatable":true}},"com.lxyer.bbs.base.user.UserBean":{"username":{"type":"java.lang.String","comment":"[登录名]","primary":false,"updatable":true},"phone":{"type":"java.lang.String","comment":"[电话号码]","primary":false,"updatable":true},"nickname":{"type":"java.lang.String","comment":"[昵称]","primary":false,"updatable":true},"realname":{"type":"java.lang.String","comment":"[真实姓名]","primary":false,"updatable":true},"email":{"type":"java.lang.String","comment":"[邮箱]","primary":false,"updatable":true}},"com.lxyer.bbs.base.user.LoginBean":{"username":{"type":"java.lang.String","primary":false,"updatable":true},"password":{"type":"java.lang.String","primary":false,"updatable":true},"sessionid":{"type":"java.lang.String","comment":"会话SESSIONID","primary":false,"updatable":true}},"com.lxyer.bbs.content.Content":{"contentid":{"type":"int","comment":"[内容id]","primary":true,"updatable":true},"userid":{"type":"int","comment":"[用户id]","primary":false,"updatable":true},"title":{"type":"java.lang.String","comment":"[标题]","primary":false,"updatable":true},"digest":{"type":"java.lang.String","comment":"[摘要]","primary":false,"updatable":true},"content":{"type":"java.lang.String","comment":"[内容]","primary":false,"updatable":true},"createtime":{"type":"long","comment":"[创建时间]","primary":false,"updatable":false},"cate":{"type":"short","comment":"[类别]","primary":false,"updatable":true},"type":{"type":"short","comment":"[内容栏目]10求助20分享30建议40公告50动态","primary":false,"updatable":true},"replynum":{"type":"int","comment":"[评论数]","primary":false,"updatable":true},"viewnum":{"type":"int","comment":"[阅读量]","primary":false,"updatable":true},"wonderful":{"type":"short","comment":"[精] 10否20是","primary":false,"updatable":true},"top":{"type":"short","comment":"[置顶]10否20是","primary":false,"updatable":true},"solved":{"type":"short","comment":"[结帖]10否20是","primary":false,"updatable":true},"status":{"type":"short","comment":"[状态] -10删除 10未结帖 20结帖 30私密","primary":false,"updatable":true}}}}; //这里必须要用单引号引起来
document.write(createhtml(jsoncontent));
</script>
</body>
</html>