programming/jsp

[jsp] jsonp 테스트

labj 2016. 12. 19. 18:32

[jsp] jsonp 테스트


* 서버 JAVA 소스

    @RequestMapping(value = "/main/jsonp", method = RequestMethod.GET)

    @ResponseBody

    public String jsonpTest(@RequestParam String id, @RequestParam String callback) {

             Map<String, String> paramMap = new HashMap<String, String>();

             paramMap.put("id", id);

             paramMap.put("result", "success");


             String result = null;

             ObjectMapper mapper = new ObjectMapper();


             try {

                      result = mapper.writeValueAsString(paramMap);

             } catch (JsonGenerationException e) {

                      e.printStackTrace();

             } catch (JsonMappingException e) {

                      e.printStackTrace();

             } catch (IOException e) {

                      e.printStackTrace();

             }

             

             System.out.println(result);

             return callback + "(" + result + ")";

    }




* 클라이언트 JSP 소스

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>

<script type="text/javascript">

         $(document).ready(function() {

         });

         function getJsonTest1() {

                  $.getJSON("http://www.domain.com/webtest2/main/jsonp?id=user&callback=?",

                           function(data) {

                                   alert(data.id + ", " + data.result);

                           }

                  );

         }

         function postJsonTest2() {

                  $.ajax({

                           type : "GET",

                           url : "http://www.domain.com/webtest2/main/jsonp",

                           data : "id=kyu",

                           dataType : "jsonp",

                           success : function(json) {

                                   alert(json.id + ", " + json.result);

                           },

                           error : function(e) {

                                   alert("error");

                           }

                  });

         }

</script>

<a href="javascript:postJsonTest2();">

         <a href="javascript:getJsonTest1();">test1</a> <br />

         <a href="javascript:postJsonTest2();">test2</a> <br />

</a>




* 테스트 결과 




[jsp] jsonp 테스트