当前位置:编程学习 > JAVA >>

spring mvc问题

使用的是spring mvc,返回结果却不是预期的,具体如下



@RequestMapping("/index")
public String index(WechatCallbackAPI callbackApi) {

return callbackApi.valid();
}


访问该地址后,看到是这个方法参数的json不是return的结果,请问是什么原因,有什么办法可以解决。
--------------------编程问答-------------------- 你不想要 json 串形式的返回? --------------------编程问答-------------------- callbackApi.valid()你这个返回是啥? --------------------编程问答-------------------- 你返回是json 不 --------------------编程问答--------------------
引用 2 楼 fangmingshijie 的回复:
callbackApi.valid()你这个返回是啥?


是个字符串,关键是它在页面上看到的是方法参数的json,而不是方法返回值的JSOn --------------------编程问答--------------------
引用 1 楼 defonds 的回复:
你不想要 json 串形式的返回?


是的,我是想要方法返回值的JSON --------------------编程问答-------------------- 加上这个@RequestMapping("/index"),他会跳转到return指定的视图,你可以再该视图里附加json数据。具体请学习modelAndView --------------------编程问答-------------------- String 对象是要返回视图用。返回 json 串你可以这样:
	/** 
     * 测试返回JSON数据 
     * @param session 
     * @return 
     */  
    @RequestMapping(value="/test")  
    @ResponseBody  
    public Object test(HttpSession session){  
          
        System.out.println("test....................");  
        return session.getAttribute("permit");  
    }  
--------------------编程问答--------------------


引用 7 楼 defonds 的回复:
String 对象是要返回视图用。返回 json 串你可以这样:
	/** 
     * 测试返回JSON数据 
     * @param session 
     * @return 
     */  
    @RequestMapping(value="/test")  
    @ResponseBody  
    public Object test(HttpSession session){  
          
        System.out.println("test....................");  
        return session.getAttribute("permit");  
    }  



http://localhost:8090/YueHuiBarWechat/api/index.json?signature=wexin×tamp=123&nonce=321&echostr=456

加上@ResponseBody    json正常,但是XML就报错了

http://localhost:8090/YueHuiBarWechat/api/index.xml?signature=wexin×tamp=123&nonce=321&echostr=456

This page contains the following errors:

error on line 1 at column 1: Document is empty
Below is a rendering of the page up to the first error.
--------------------编程问答--------------------
@RequestMapping("/index")
@ResponseBody
public String index(WechatCallbackAPI callbackApi) {
String validStr = callbackApi.valid();
return validStr;
// map.addAttribute("vv", validStr);
}
--------------------编程问答--------------------
引用 9 楼 wfcfan 的回复:
@RequestMapping("/index")
@ResponseBody
public String index(WechatCallbackAPI callbackApi) {
String validStr = callbackApi.valid();
return validStr;
// map.addAttribute("vv", validStr);
}
你什么意思呢?
到底是想返回 json,还是 html 页面 --------------------编程问答-------------------- 返回json

但json是方法参数的json,不是方法返回值的参数。
--------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 首先要返回huo

引用 1 楼 defonds 的回复:
你不想要 json 串形式的返回?

首先你确定你这个犯法返回的是个json值,而且确定你前台接受的也是json值 --------------------编程问答-------------------- return callbackApi.valid();
补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,