Ajax jsonp跨域请求返回字符串,对象,集合
将字符串,对象,集合转换为json格式, 然后在前端获取json数据后,进行相应转换处理即可。
ajax请求
var url="http://192.168.188.188:8080/Audit/huang/ajax.do";
$.ajax({
type: "post",
data:{"name":"哈哈哈"}, //参数
url: url,
async: false,
dataType:"jsonp",
jsonp:"callbackparam",//约定回调函数的参数名
success: function(data){
alert(data); //返回的数据
}
});
服务端:
import java.io.PrintWriter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.alibaba.fastjson.JSON;
@Controller
@RequestMapping("huang")
public class TesttttController {
@RequestMapping("ajax")
public void getTest(String name,HttpServletRequest request,HttpServletResponse response) throws Exception{
/*name = request.getParameter("name"); 第二种获取参数方式 */
//跨域请求响应
String callback=request.getParameter("callbackparam");
PrintWriter out =response.getWriter();
out.println(callback+"("+JSON.toJSONString(name)+")");//返回jsonp格式数据
out.flush();
out.close();
}
}