NutzCN Logo
问答 请问一下怎么获取参数问题
发布于 2602天前 作者 qq_37643c1b 1667 次浏览 复制 上一个帖子 下一个帖子
标签:

@
请求参数,如下:

{
	"code":"000002",
    "pwd":"ucjcd1sjt6cs7xiwc",
    "tab_order": [
        {
            "pnr_no": 20,
            "airline": "MU",
            // 等等

Java 代码

	public Object addDo(@Param("tab_order") List<Tab_order> tab_order,@Param("code")String code,@Param("pwd")String pwd) {

我之前没有加 code 和 pwd 两个参数的时候,可以获取tab_order 对象的,可是我添加了后再方法里面用,@Param("code")String code,@Param("pwd")String pwd 他们都为null 了,在这样的情况我应该怎么获取呢?

10 回复

这种只能发json了

@wendal 有么有其他的解决方法,因为发json 的是一个实体对象都是一一对应的字段,后加的两个字段不是这个对象里面的,所以我就提取了出来,可是不知道怎么获取。

现在发的是不是json

是的
我帖下完整的请求json 吧

{
	"code":"000002",
    "pwd":"ucjcd1sjt6c7xiwc",
    "tab_order": [
        {
            "pnr_no": 20,
            "airline": "MU",
            "price": 1222,
            "tax_cost": 200,
            "purchase_price":800,
            "org_date":"2017-03-25",
            "org":"SHA",
            "dst":"NDG",
            "flight_no":"CAN830",
            "cabin":"V",
            "fight_name":"tt",
            "fight_type":"1",
            "id_type":"1",
            "id_num":"431129199106444210",
            "sex":"1",
            "birthday":"1991-06-11",
            "ticket_num":"8526895656",
            "org_time":"10:55",
            "profit_point":"0"
        }
    ]
}

原来 是没有 code 和 pwd 这两个的 就是一个 对象 这样 我可以获取到
可是 我家了2个属性后,就获取不了了~

入口方法贴一下,没加@AdaptBy的原因吧. js代码也贴一下看看

后台代码 部分 我帖一下

@At("/platform/scancabin/api")
	@AdaptBy(type = JsonAdaptor.class)
	public Object addDo(@Param("tab_order") List<Tab_order> tab_order,@Param("code")String code,@Param("pwd")String pwd) {

		if(StringUtils.isNullOrEmpty(code) || StringUtils.isNullOrEmpty(pwd)){
			
			log.info("用户code或密码为空...");
			return Result.error("system.error");
		}
// do something ....

我是用postman 调用这个接口 没有写JS

post 请求这个接口,然后带上这些请求参数

我就是想知道 ,怎么获取 tab_order 对象以上的两个 属性,在后台代码这里。该加的 我都加了呢

@qq_37643c1b 加个@Param("..")Map map 然后输出一下内容看看

@qq_37643c1b 原因?解法?

我自己的失误
Content-Type 的值设置为 application/json

我用 postman 调用接口的时候,没有设置这里,最后

@At("/platform/scancabin/api")
	@AdaptBy(type = JsonAdaptor.class)
	public Object addDo(@Param("tab_order") List<Tab_order> tab_order,@Param("code")String code,@Param("pwd")String pwd) {

		

这样写是可以获取 对象上面的 code 和 pwd 两个字段的值
都是 失误啊 ......

添加回复
请先登陆
回到顶部