SpringSecurity下做POST测试以及传递实体
写完代码之后,要测试,由于不怎么会用postman,加上用了spring security,所以需要登录,很麻烦。对于对于get请求,直接访问还好,但是对于POST请求,我就很无可奈何了,一些post请求能改成get请求还好说,有些不好改的就太费劲了。后来有人告诉了我一个ajax的写法。其实也蛮麻烦的,但是还好。
首先,我不是用了spring security吗,所以需要先登录。
然后,因为要用ajax,所以页面上一定要引用ajax,否则,会提示$.ajax is not a function。
然后,你就可以使用OPTION+COMMAND+I(mac的chrome浏览器)打开console。然后,你就可以在console,写这样的代码就可以了。
$.ajax({url:'http://127.0.0.1/test/post',type:'post',data:{id:1,name:'呵呵',description:'为何会'},dataType:'json'}).then(function(data) {
console.log(data)
});
然后后台可能是这样一个接收类。
package com.tgb.controller;import com.tgb.entity.MyEntity;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;import java.util.HashMap;
import java.util.Map;/*** 测试post*/
@RestController
@Controller
@PreAuthorize("hasRole('ADMIN')")
public class TestController extends BaseController {/*** 测试POST* @param id* @param name* @param description* @return 信息*/@RequestMapping(value = "/test/post",method = RequestMethod.POST)public Object testPost(@RequestParam(value = "id")String id,@RequestParam(value = "name")String name,@RequestParam(value = "description",required = false)String description) {String testPost = "test post:"+id+","+name+","+description;Map<String, Object> result = new HashMap<>();result.put("data", testPost);return result;}/*** 测试POST实体* @param entity 实体* @param name* @return 信息*/@RequestMapping(value = "/test/post/entity",method = RequestMethod.POST)public Object testPostEntity(MyEntity entity,@RequestParam(value = "name",required = false)String name) {String testPost = "test post entity:"+entity.getId()+","+entity.getName()+","+entity.getDescription();Map<String, Object> result = new HashMap<>();result.put("data", testPost);return result;}
}
然后效果如下,
然后对于测试实体写了不少不行的代码,
testPostEntity(MyEntity entity,@RequestParam(value = "name",required = false)String name)
这里要注意不能写成@RequestParam(value="entity")MyEntity entity这样,要不然总是提示你找不到叫entity的参数;
org.springframework.web.bind.MissingServletRequestParameterException: Required MyEntity parameter 'entity' is not present。
除此之外,我还尝试了其他几种方式。效果如下
JSON.stringfy不知道是不是使用方式不对,并没有什么效果;
这样写也没有什么效果;
然后这么写是可以的。
总结一下就是:若是AJAX传递实体,直接将所有属性写出来,和普通的参数一样就行。
SpringSecurity下做POST测试以及传递实体相关推荐
- 性能测试入门(六)windows及Linux下做压力测试的注册表设置
windows及Linux下做压力测试的注册表设置 from: http://www.cnblogs.com/tianzhiliang/articles/2400176.html TcpTimedWa ...
- 用Prime95来做linux下CPU压力测试
Prime95是用来做linux下CPU压力测试的,由GIMPS (Great Internet Mersenne Prime Search)所提供,主要是透过运算找出梅森质数,质数(Prime nu ...
- 初学SNMP,在spring boot 下使用snmp4j 做本地测试调通的记录
一.SNMP概念学习参考这篇 Snmp学习总结(七)--SNMP4J介绍 - 孤傲苍狼 - 博客园 (cnblogs.com) 二.SNMP协议深入学习(不想了解的可跳过) 聊聊SNMP协议 - C ...
- matlab的combuilder系列-matlab下做com组件 zzfrom SMTH bbs
matlab的combuilder系列-matlab下做com组件 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com ...
- Linux学习13-CentOS安装ab做压力测试
前言 网站性能压力测试是服务器网站性能调优过程中必不可缺少的一,测试环境准备好了后,如何对网站做压力测试? 压力测试的工具很多,如:ab.http_load.webbench.siege.jmeter ...
- 智能合约场景下的模糊测试——智能合约基本介绍
智能合约场景下的模糊测试--智能合约基本介绍 前言 一 基本概念 1.1 智能合约 1.2 图灵完全 二 智能合约特性 2.1 运行环境 2.2 生命周期 1)开发 2)编译 3)部署 4)调用 5) ...
- 云服务器下,与嵌入式板子传递文件的几种方式 |FTP SFTP SCP TFTP NFS | 以及NFS 挂载失败常见问题
云服务器下,与嵌入式板子传递文件的几种方式 一.ftp.sftp.scp 1.ftp 2.sftp 3.scp 二.tftp 1.下载tftp 2.创建tftp服务器的文件目录 3.修改配置文件 /e ...
- 如何linux查看mysql目录下日志_测试人员如何在linux服务器中查询mysql日志?
测试工程师在测试软件的过程中,流程往往是先接口测试,接着就是功能性测试.在做功能性测试的时候,往往有这么一个工作场景,就是出现错误后,我们怎么快速排除数据库报错. 举例某个电商网站,当我们文本框中输入 ...
- 基于.net的微服务架构下的开发测试环境运维实践
眼下,做互联网应用,最火的架构是微服务,最热的研发管理就是DevOps, 没有之一.微服务.DevOps已经被大量应用,它们已经像传说中的那样,可以无所不能.特来电云平台,通过近两年多的实践,发现完全 ...
- 在连续发布版本的情况下 如何做好测试?
在连续发布版本的情况下 如何做好测试? 1.跟项目经理协商,确定每一个版本的测试重点.比如,只进行基本功能验证,或者是冒烟测试,挑选重要的功能的测试用例,每次只执行这些.比如,只进行主要流程验证.这哥 ...
最新文章
- 微软 CEO 纳德拉访谈:人工智能的大方向与未来是什么?
- Navicat导入TXT到数据库
- ExitInterface
- 字符流读取,乱码问题
- 解读华为云原生数据库设计原则,打破传统数据库上云瓶颈
- firefox浏览器优化-速度超chrome
- php数组操作,内容相同,键值不同,互换
- webpack5学习与实战-(六)-babel-loader解析js文件
- c语言开源库windows,几款国产开源的Windows界面库
- 计算机绘图 cad),CAD计算机绘图入门
- 如何修复损坏的PDF文件 - PDF修复工具教程
- 计算机添加usb网络打印机,USB路由器设置网络打印机方法
- java计算机毕业设计家教平台系统源码+mysql数据库+系统+lw文档+部署
- 《火车头采集器采集网页数据》火车头配置规则采集信息文章数据。
- ESP8266 发送数据和接收数据(万能模板)
- 如何用NLP技术和标题党说拜拜-文本摘要
- 上拉电阻与下拉电阻总结 与 GPIO框图分析
- 电视android内置系统界面,系统界面:原生安卓 定制界面_汽车科技评测-中关村在线...
- 如何配置阿里Maven镜像
- 获取log文件信息,并保存至Excel文件