zoukankan      html  css  js  c++  java
  • ajax返回json对象的两种写法

    1. 前言

    dataType: 要求为String类型的参数,预期服务器返回的数据类型。如果不指定,JQuery将自动根据http包mime信息返回responseXML或responseText,并作为回调函数参数传递。

      response.setContentType("text/html"); //一般默认返回的类型自己指定(有xmlDoc、jsonObj、html、text这几种)

    如果返回字符串是json的字符串,希望返回的数据为json对象,可以在返回时设置

       response.setContentType("text/json");

    或者

      让其返回json字符串然后再转成json对象(见http://www.cnblogs.com/fanbi/p/7289551.html)。

    2.方法

    第一种

    JS代码:

    $.ajax({
    		type: 'POST',
    		data : { 
    			   mode:"getData", 
    			   id:id,
    			 },
    		url : './data',
    		dataType: 'json', //添加这一条语句	
    		success: function(msg) {
    		if(msg.status == "success"){
    	 	    	//todo sth			
    	 					
    	 	    }
    		}                              
    	});  

    Java代码:

    String status = "{"status":"success"}";
    	
    //response.setContentType("text/json");
    IOUtils.write(status.getBytes(), response.getOutputStream());
    //或者
    try (PrintWriter writer = response.getWriter();) {
        writer.write(status);
        writer.flush();
    } catch (IOException e) {
        LOG.error(e.getMessage(), e);
    }
    
    

    第二种

    JS代码:

    $.ajax({
    		type: 'POST',
    		data : { 
    			   mode:"getData", 
    			   id:id,
    			 },
    		url : './data',
    		success: function(msg) {
    		if(msg.status == "success"){
    	 	    	//todo sth			
    	 					
    	 	    }
    		}                              
    	});  

    Java代码:

    String status = "{"status":"success"}";
    	
    response.setContentType("text/json");
    IOUtils.write(status.getBytes(), response.getOutputStream()); 
    //或者
    try (PrintWriter writer = response.getWriter();) {
        writer.write(status);
        writer.flush();
    } catch (IOException e) {
        LOG.error(e.getMessage(), e);
    }
    
  • 相关阅读:
    C++中数字与字符串之间的转换
    关于安卓启动eclipse错误:找不到元素‘d:devices'的声明
    linux相关解压命令
    泛型
    CRUD工程师---番外篇---反射
    CRUD工程师---设计模式
    AOP切面日志
    CRUD工程师---InnoDB存储引擎
    CRUD工程师---InnoDB存储引擎2
    CRUD工程师---InnoDB存储引擎4(表)
  • 原文地址:https://www.cnblogs.com/fanbi/p/7705352.html
Copyright © 2011-2022 走看看