2023年4月7日
计划
执行
09点10分 开始工作,
记录
已解决
- 数据库表中
不需要 error是错误码表 - 在enu中存放的是需要枚举的东西
- 调试功能竟然也不要
- 状态码也不要了
问题想法
- 格式化数据改一下名字
- 权限那里,改成修改角色,然后角色有固定的权限,然后只有项目创建者即项目经理可以修改项目成员的具体权限
- 超级管理员不可以修改项目成员,不可以删改项目,这里要改
删除项目类型,访问密码,是否开放搜索这三项
- api/src/main/webapp/resources/html/user/interfaceList.tpl.html这个文件中的设为模板和取消模板可以学习一下,可以按钮可以变色,而且可以触发操作,用作审核人员审核
- 得把新增成员后默认的那些权限都删了
- mock功能生成的地址有问题,或者说返回的json数据有错
GPT
-
调试接口返回的数据通常是API请求返回的原始数据。这些数据可以包含有关API请求的详细信息,例如请求参数、请求头、响应状态码、响应头等。这些数据可以帮助你诊断API请求中的问题,并找到解决方案。
调试接口返回的数据通常以JSON格式或XML格式返回,具体取决于API的返回格式。如果API返回的是JSON格式的数据,那么调试接口返回的数据也将是JSON格式的数据。同样,如果API返回的是XML格式的数据,那么调试接口返回的数据也将是XML格式的数据。
除了原始数据之外,调试接口还可以返回一些有用的调试信息,例如API请求所用的时间、请求的URL地址、请求的方法(GET、POST等)、请求的参数、请求的头信息等等。这些信息可以帮助你更好地理解API请求,以及优化API请求的性能和可靠性。
-
调试接口返回的数据通常是API请求返回的原始数据。这些数据可以包含有关API请求的详细信息,例如请求参数、请求头、响应状态码、响应头等。这些数据可以帮助你诊断API请求中的问题,并找到解决方案。
调试接口返回的数据通常以JSON格式或XML格式返回,具体取决于API的返回格式。如果API返回的是JSON格式的数据,那么调试接口返回的数据也将是JSON格式的数据。同样,如果API返回的是XML格式的数据,那么调试接口返回的数据也将是XML格式的数据。
除了原始数据之外,调试接口还可以返回一些有用的调试信息,例如API请求所用的时间、请求的URL地址、请求的方法(GET、POST等)、请求的参数、请求的头信息等等。这些信息可以帮助你更好地理解API请求,以及优化API请求的性能和可靠性。
-
public JsonResult debug(@ModelAttribute InterfaceDto interFace) throws IOException, Exception {
Assert.notNull(interFace.getMethod(), "请求方法不能为空");
Assert.notNull(interFace.getFullUrl(), "地址不能为空");
Assert.isTrue(interFace.getFullUrl().startsWith("http"), "地址必须以 http开头");String fullUrl = interFace.getFullUrl(); List<ParamDto> headerList = JSONArray.parseArray(interFace.getHeader() == null ? "[]" : interFace.getHeader(), ParamDto.class); Map<String, String> httpHeaders = new HashMap<>(); for (ParamDto paramDto : headerList) { httpHeaders.put(paramDto.getName(), paramDto.getDef()); } // 如果自定义参数不为空,则表示需要使用post发送自定义包体 if (C_PARAM_RAW.equals(interFace.getParamType())) { return new JsonResult(1, Tools.getMap("debugResult", HttpPostGet.postBody(fullUrl, interFace.getParam(), httpHeaders))); } List<ParamDto> paramList = JSONArray.parseArray(interFace.getParam() == null ? "[]" : interFace.getParam(), ParamDto.class); Map<String, String> httpParams = new HashMap<>(); for (ParamDto paramDto : paramList) { if (fullUrl.contains("{" + paramDto.getRealName() + "}")) { fullUrl = fullUrl.replace("{" + paramDto.getName() + "}", paramDto.getDef()); } else { httpParams.put(paramDto.getName(), paramDto.getDef()); } } try { switch (interFace.getMethod()) { case "POST": return new JsonResult(1, Tools.getMap("debugResult", HttpPostGet.post(fullUrl, httpParams, httpHeaders))); case "GET": return new JsonResult(1, Tools.getMap("debugResult", HttpPostGet.get(fullUrl, httpParams, httpHeaders))); case "PUT": return new JsonResult(1, Tools.getMap("debugResult", HttpPostGet.put(fullUrl, httpParams, httpHeaders))); case "DELETE": return new JsonResult(1, Tools.getMap("debugResult", HttpPostGet.delete(fullUrl, httpParams, httpHeaders))); case "HEAD": return new JsonResult(1, Tools.getMap("debugResult", HttpPostGet.head(fullUrl, httpParams, httpHeaders))); case "OPTIONS": return new JsonResult(1, Tools.getMap("debugResult", HttpPostGet.options(fullUrl, httpParams, httpHeaders))); case "TRACE": return new JsonResult(1, Tools.getMap("debugResult", HttpPostGet.trace(fullUrl, httpParams, httpHeaders))); case "PATCH": return new JsonResult(1, Tools.getMap("debugResult", HttpPostGet.patch(fullUrl, httpParams, httpHeaders))); default: return new JsonResult(1, Tools.getMap("debugResult", "不支持的请求方法:" + interFace.getMethod())); } } catch (Exception e) { e.printStackTrace(); return new JsonResult(1, Tools.getMap("debugResult", "调试出错\r\nmessage:" + e.getMessage())); }
}
这段代码是一个接口调试的方法,该方法接收一个 InterfaceDto 对象作为参数,包含了接口相关的信息,例如请求方法、请求地址、请求头、请求参数等。方法首先对参数进行了校验,确保请求方法和请求地址不为空,并且请求地址以 http 开头。然后根据请求头和请求参数构造了一个 httpHeaders 和 httpParams 对象,根据请求方法调用了不同的 HttpPostGet 方法来发送请求,并返回一个 JsonResult 对象,其中包含了调试结果。如果调用出错,会返回一个包含错误信息的 JsonResult 对象。该方法的实现比较简单,主要是通过 HttpPostGet 工具类来发送 http 请求,并将结果封装成 JsonResult 对象返回。如果您遇到了接口调试的问题,可以检查一下相关参数是否正确传递,并且确保接口地址和参数正确。如果调用仍然失败,可以尝试使用其他工具或者手动发送 http 请求来进行排查。
-
HTTP是一个基于请求-响应模式的协议,而GET和POST是HTTP协议中最常用的两种请求方式。
GET请求:一般用于获取数据,通过URL(即请求地址)传递参数,数据会以查询字符串的形式附在URL后面,可以被缓存,也可以被收藏为书签,但是传输的数据量有限制。
POST请求:一般用于提交数据,数据会通过请求体(即请求的正文)传递,数据量较大,相对安全,但是不能被缓存和收藏为书签。
返回的数据本质上没有什么不同,都是通过HTTP响应返回的。不同的是,GET请求返回的数据会附在URL后面,而POST请求返回的数据会在响应体中。此外,GET请求返回的数据量有限制,而POST请求没有这个限制。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 百万级群聊的设计实践
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期