前端给后端发送请求时,时间格式怎么传
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了前端给后端发送请求时,时间格式怎么传相关的知识,希望对你有一定的参考价值。
参考技术A 后端在定义VO数据的类型的时候,需要直接定义成Date类型然后前端在发送的时候,要发送这样的格式:‘'YYYY-MM-DD HH:mm:ss'’,不然那后台接收不到
直接使用moment的时间格式化就好了
@RequestBody的使用
背景:后端接口入参比较多时会选择使用对象去接收前端传过来的json数据(使用@RequestBody注解),在使用过程中有遇到一些关于请求格式存在问题服务器响应不太友好的现象,特做优化记载。
问题:
做开放服务时有用到@RequestBody以复杂对象接收前端传过来的json数据,当前端传递给后端的json数据出现格式问题,返回的响应信息不友好,例如:
后端对应的Controller:
/** * 新建任务 * * @param request * @return */ @RequestMapping("addTaskInfo.do") @ResponseBody public Message<Object> addTaskInfo(@RequestBody TaskConfSaveParam param, HttpServletRequest request) { Message<Object> message = new Message<Object>(); message.setData(JSON.toJSON(param)); return message; }
使用PostMan测试:
前端传递给后端的json数据:
响应:
优化:中心思想为 以String接收前端传过来的json数据,然后将接收到json串做转换,如果转换出错,则告诉用户 “JSON入参格式错误”
@RequestBody直接以String接收前端传过来的json数据:
后端对应的Controller:
/** * 新建任务 * * @param request * @return */ @RequestMapping("addTaskInfo.do") @ResponseBody public Message<Object> addTaskInfo(@RequestBody String paramStr, HttpServletRequest request) { Message<Object> message = new Message<Object>(); Object paramJson = null; try { paramJson = JSONObject.parse(paramStr); } catch (JSONException e) { logger.error("error", e); message.setCode(FdataConstants.EXECUTE_FAILED_PARAMS_ERROR); message.setMsg("JSON入参格式错误:"+ExceptionUtils.getMessage(e)); return message; } TaskConfSaveParam param = JSONObject.parseObject(paramStr, TaskConfSaveParam.class); message.setData(JSON.toJSON(param)); return message; }
使用PostMan测试:
前端传递给后端的json数据 & 响应:
参考文档:https://blog.csdn.net/justry_deng/article/details/80972817
以上是关于前端给后端发送请求时,时间格式怎么传的主要内容,如果未能解决你的问题,请参考以下文章