{"id":510,"date":"2012-02-04T09:14:28","date_gmt":"2012-02-04T09:14:28","guid":{"rendered":"http:\/\/brain.dailyon.net\/?p=510"},"modified":"2012-02-04T09:14:28","modified_gmt":"2012-02-04T09:14:28","slug":"jsonp-crossdomain-%ed%95%b4%ea%b2%b0%ec%b1%85","status":"publish","type":"post","link":"https:\/\/blog.goorigo.com\/?p=510","title":{"rendered":"JSONP : CrossDomain \ud574\uacb0\ucc45"},"content":{"rendered":"<p><a name=\"intro\"><\/a><\/p>\n<p>\ucd9c\ucc98 \ud83d\ude15<a href=\"http:\/\/www.ibm.com\/developerworks\/kr\/library\/wa-aj-jsonp1\/index.html\">http:\/\/www.ibm.com\/developerworks\/kr\/library\/wa-aj-jsonp1\/index.html<\/a><\/p>\n<p>\uc18c\uac1c<\/p>\n<p>Ajax(Asynchronous JavaScript and XML)\ub294 \ud754\ud788 Web 2.0 \uc0ac\uc774\ud2b8\ub77c\uace0 \ud558\ub294 \uc0c8\ub85c\uc6b4 \uc138\ub300\uc758 \uc6f9 \uc0ac\uc774\ud2b8\ub97c \uc120\ub3c4\ud558\ub294 \ud575\uc2ec \uae30\uc220\uc774\ub2e4. Ajax\ub97c \uc0ac\uc6a9\ud558\uba74 \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \ud45c\uc2dc \ubc0f \ub3d9\uc791\uc5d0 \uc601\ud5a5\uc744 \uc8fc\uc9c0 \uc54a\uace0 \ubc31\uadf8\ub77c\uc6b4\ub4dc\uc5d0\uc11c \ub370\uc774\ud130\ub97c \uac80\uc0c9\ud560 \uc218 \uc788\ub2e4. \ub370\uc774\ud130\ub294 \ud074\ub77c\uc774\uc5b8\ud2b8 \uce21 JavaScript\uc5d0\uc11c HTTP\ub85c \uc6d0\uaca9 \uc11c\ubc84\uc5d0 \uc5f0\uacb0\ud558\ub294 \uae30\ub2a5\uc744 \uc81c\uacf5\ud558\ub294 API\uc778?<code>XMLHttpRequest<\/code>?\ud568\uc218\ub97c \uc0ac\uc6a9\ud558\uc5ec \uac80\uc0c9\ub41c\ub2e4. \ub610\ud55c Ajax\ub294 \uc5ec\ub7ec \uc18c\uc2a4\uc758 \ucee8\ud150\uce20\ub97c \ub2e8\uc77c \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0 \ud1b5\ud569\ud558\ub294 \ub9ce\uc740 \ub9e4\uc2dc\uc5c5\uc5d0\uc11c \uae30\ubcf8 \uae30\uc220\ub85c \uc0ac\uc6a9\ub418\uace0 \uc788\ub2e4.<\/p>\n<p>\ud558\uc9c0\ub9cc \uc774 \ubc29\ubc95\uc744 \uc0ac\uc6a9\ud560 \uacbd\uc6b0\uc5d0\ub294 \ube0c\ub77c\uc6b0\uc800\uc758 \uc81c\ud55c\uc0ac\ud56d\uc73c\ub85c \uc778\ud574 \ub3c4\uba54\uc778 \uac04 \ud1b5\uc2e0\uc774 \uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294\ub2e4. \ub2e4\ub978 \ub3c4\uba54\uc778\uc758 \ub370\uc774\ud130\ub97c \uc694\uccad\ud558\ub824\uace0 \ud558\uba74 \ubcf4\uc548 \uc624\ub958\uac00 \ubc1c\uc0dd\ud55c\ub2e4. \ubb3c\ub860 \ub370\uc774\ud130\uac00 \uc788\ub294 \uc6d0\uaca9 \uc11c\ubc84\ub97c \uc81c\uc5b4\ud558\uace0 \ub3d9\uc77c\ud55c \ub3c4\uba54\uc778\uc5d0\ub9cc \ub370\uc774\ud130\ub97c \uc694\uccad\ud55c\ub2e4\uba74 \uc774\ub7ec\ud55c \ubcf4\uc548 \uc624\ub958\ub97c \ub9c9\uc744 \uc218 \uc788\ub2e4. \ud558\uc9c0\ub9cc \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc774 \uace0\uc720 \uc11c\ubc84\uc5d0\ub9cc \ud55c\uc815\ub418\uc5b4 \uc788\ub2e4\uba74 \ubb34\uc2a8 \uc758\ubbf8\uac00 \uc788\uaca0\ub294\uac00? \uc5ec\ub7ec \uc368\ub4dc\ud30c\ud2f0 \uc11c\ubc84\uc5d0 \uc788\ub294 \ub370\uc774\ud130\ub97c \uc218\uc9d1\ud574\uc57c \ud558\ub294 \uacbd\uc6b0\uc5d0\ub294 \uc5b4\ub5bb\uac8c \ud560 \uac83\uc778\uac00?<\/p>\n<p><a name=\"same_origin_policy\"><\/a>\ub3d9\uc77c \ucd9c\ucc98 \uc815\ucc45 \uc81c\ud55c \uc774\ud574<\/p>\n<p>\ub3d9\uc77c \ucd9c\ucc98 \uc815\ucc45\uc740 \ud55c \ub3c4\uba54\uc778\uc5d0\uc11c \ub85c\ub4dc\ub41c \uc2a4\ud06c\ub9bd\ud2b8\uac00 \ub2e4\ub978 \ub3c4\uba54\uc778\uc758 \ubb38\uc11c \ud2b9\uc131\uc744 \uac00\uc838\uc624\uac70\ub098 \uc870\uc791\ud558\uc9c0 \ubabb\ud558\ub3c4\ub85d \ud55c\ub2e4. \uc989, \uc694\uccad\ub41c URL\uc758 \ub3c4\uba54\uc778\uc774 \ud604\uc7ac \uc6f9 \ud398\uc774\uc9c0\uc758 \ub3c4\uba54\uc778\uacfc \uac19\uc544\uc57c \ud55c\ub2e4. \uc774\ub294 \uae30\ubcf8\uc801\uc73c\ub85c \ube0c\ub77c\uc6b0\uc800\uac00 \ub2e4\ub978 \ucd9c\ucc98\uc758 \ucee8\ud150\uce20\ub97c \uc870\uc791\ud558\ub294 \uac83\uc744 \ubc29\uc9c0\ud558\uae30 \uc704\ud574 \ud574\ub2f9 \ucee8\ud150\uce20\ub97c \ubd84\ub9ac\ud55c\ub2e4\ub294 \uac83\uc744 \uc758\ubbf8\ud55c\ub2e4. \uc774 \ube0c\ub77c\uc6b0\uc800 \uc815\ucc45\uc740 \uc544\uc8fc \uc624\ub798 \uc804\uc778 Netscape Navigator 2.0\ubd80\ud130 \uc0ac\uc6a9\ub418\ub358 \uac83\uc774\ub2e4.<\/p>\n<p>\ube44\uad50\uc801 \uac04\ub2e8\ud558\uac8c \uc774 \uc81c\ud55c\uc744 \ud574\uacb0\ud558\ub824\uba74, \uc6f9 \ud398\uc774\uc9c0\uc5d0\uc11c \uc790\uc2e0\uc758 \ucd9c\ucc98\uac00 \ub418\ub294 \uc6f9 \uc11c\ubc84\uc5d0 \ub370\uc774\ud130\ub97c \uc694\uccad\ud558\uace0 \ud574\ub2f9 \uc6f9 \uc11c\ubc84\uac00 \uc2e4\uc81c \uc368\ub4dc\ud30c\ud2f0 \uc11c\ubc84\uc5d0 \uc694\uccad\uc744 \uc804\ub2ec\ud558\ub294 \ud504\ub85d\uc2dc \uc11c\ubc84 \uc5ed\ud560\uc744 \uc218\ud589\ud558\uba74 \ub41c\ub2e4. \ub9ce\uc774 \uc0ac\uc6a9\ub418\uace0 \uc788\uae30\ub294 \ud558\uc9c0\ub9cc \uc774 \uae30\uc220\uc740 \ud655\uc7a5\uc131\uc774 \uc5c6\ub2e4. \ub610 \ub2e4\ub978 \ubc29\ubc95\uc73c\ub85c\ub294 \ud504\ub808\uc784 \uc694\uc18c\ub97c \uc0ac\uc6a9\ud558\uc5ec \ud604\uc7ac \uc6f9 \ud398\uc774\uc9c0 \ub0b4\uc5d0 \uc0c8 \uc601\uc5ed\uc744 \ub9cc\ub4e0 \ud6c4?<code>GET<\/code>?\uc694\uccad\uc744 \uc0ac\uc6a9\ud558\uc5ec \uc368\ub4dc\ud30c\ud2f0 \ucee8\ud150\uce20\ub97c \uac00\uc838\uc624\ub294 \ubc29\ubc95\uc774 \uc788\ub2e4. \ud558\uc9c0\ub9cc \ucee8\ud150\uce20\ub97c \uac00\uc838\uc628 \uc774\ud6c4\uc5d0 \ud504\ub808\uc784\uc758 \ucee8\ud150\uce20\uac00 \ub3d9\uc77c \ucd9c\ucc98 \uc815\ucc45 \uc81c\ud55c\uc5d0 \uac78\ub9b4 \uc218 \uc788\ub2e4.<\/p>\n<p>\uc774 \uc81c\ud55c\uc744 \ud574\uacb0\ud560 \uc218 \uc788\ub294 \ubc29\ubc95\uc740 \uc6f9 \ud398\uc774\uc9c0\uc5d0 \ub3d9\uc801 \uc2a4\ud06c\ub9bd\ud2b8 \uc694\uc18c\ub97c \uc0bd\uc785\ud558\ub294 \uac83\uc774\ub2e4. \uc774 \uc2a4\ud06c\ub9bd\ud2b8 \uc694\uc18c\uc5d0\ub294 \ub2e4\ub978 \ub3c4\uba54\uc778\uc758 \uc11c\ube44\uc2a4 URL\uc744 \uac00\ub9ac\ud0a4\ub294 \uc18c\uc2a4\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc2a4\ud06c\ub9bd\ud2b8 \uc790\uccb4\uc801\uc73c\ub85c \ub370\uc774\ud130\ub97c \uac00\uc838\uc62c \uc218 \uc788\ub2e4. \uc774 \uc2a4\ud06c\ub9bd\ud2b8\ub294 \ub85c\ub4dc\ub418\uba74\uc11c \uc2e4\ud589\ub41c\ub2e4. \uc774 \ubc29\ubc95\uc740 \ub3d9\uc77c \ucd9c\ucc98 \uc815\ucc45\uc5d0\uc11c \ub3d9\uc801 \uc2a4\ud06c\ub9bd\ud2b8 \uc0bd\uc785\uc774 \ud5c8\uc6a9\ub418\uace0 \uc2a4\ud06c\ub9bd\ud2b8\uac00 \uc6f9 \ud398\uc774\uc9c0\uc758 \uc18c\uc2a4 \ub3c4\uba54\uc778\uc5d0\uc11c \ub85c\ub4dc\ub41c \uc2a4\ud06c\ub9bd\ud2b8\ub85c \uac04\uc8fc\ub418\uae30 \ub54c\ubb38\uc5d0 \uc815\uc0c1\uc801\uc73c\ub85c \uc791\ub3d9\ub41c\ub2e4. \ud558\uc9c0\ub9cc \uc774 \uc2a4\ud06c\ub9bd\ud2b8\uc5d0\uc11c \ub2e4\ub978 \ub3c4\uba54\uc778\uc758 \ubb38\uc11c\ub97c \ub85c\ub4dc\ud558\ub824\ub294 \uc2dc\ub3c4\ub294 \uc2e4\ud328\ud558\uac8c \ub41c\ub2e4. \ub2e4\ud589\ud788 JSON(JavaScript Object Notation)\uc744 \ud568\uaed8 \uc0ac\uc6a9\ud558\uba74 \uc774 \uae30\uc220\uc744 \ud5a5\uc0c1\uc2dc\ud0ac \uc218 \uc788\ub2e4.<\/p>\n<p><a name=\"json_jsonp\"><\/a>JSON\uacfc JSONP<\/p>\n<p>JSON\uc740 XML\uc5d0 \ube44\ud574 \ube0c\ub77c\uc6b0\uc800\uc640 \uc11c\ubc84 \uac04\uc758 \uc815\ubcf4 \uad50\ud658\uc5d0 \uc0ac\uc6a9\ub418\ub294 \uacbd\ub7c9 \ub370\uc774\ud130 \ud615\uc2dd\uc774\ub2e4. JSON\uc740 \uc774\ub984\uc5d0\uc11c \uc54c \uc218 \uc788\ub4ef\uc774 JavaScript \uc624\ube0c\uc81d\ud2b8\uc758 \ubb38\uc790\uc5f4 \ud45c\ud604\uc774\ub2e4. (\uc774 \uc0ac\uc2e4\uc744 \uac04\uacfc\ud558\ub294 JavaScript \uac1c\ubc1c\uc790\ub4e4\uc774 \uc5c6\uae30\ub97c \ubc14\ub780\ub2e4.) \uc608\ub97c \ub4e4\uc5b4, symbol\uacfc price\ub77c\ub294 \ub450 \uc18d\uc131\uc744 \uac00\uc9c4 ticker \uc624\ube0c\uc81d\ud2b8\uac00 \uc788\ub2e4\uace0 \uac00\uc815\ud574 \ubcf4\uc790. JavaScript\uc5d0\uc11c\ub294 \ub2e4\uc74c\uacfc \uac19\uc774 ticker \uc624\ube0c\uc81d\ud2b8\ub97c \uc815\uc758\ud560 \uc218 \uc788\ub2e4.<\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>var ticker = {symbol: 'IBM', price: 91.42};<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>\ub2e4\uc74c\uc740 \ub3d9\uc77c\ud55c \uc815\uc758\ub97c JSON\uc73c\ub85c \ud45c\ud604\ud55c \uac83\uc774\ub2e4.<\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>{symbol: 'IBM', price: 91.42}<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>JSON\uacfc JSON\uc744 \ub370\uc774\ud130 \uad50\ud658 \ud615\uc2dd\uc73c\ub85c \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \uac00\ub2a5\uc131\uc5d0 \ub300\ud55c \uc790\uc138\ud55c \uc815\ubcf4\ub294?<a href=\"http:\/\/www.ibm.com\/developerworks\/kr\/library\/wa-aj-jsonp1\/index.html#resources\">\ucc38\uace0\uc790\ub8cc<\/a>\uc5d0\uc11c \ubcfc \uc218 \uc788\ub2e4. Listing 1\uc5d0\uc11c\ub294 \ud638\ucd9c\ub418\uc5c8\uc744 \ub54c IBM \uc8fc\uac00\ub97c \ubcf4\uc5ec \uc8fc\ub294 JavaScript \ud568\uc218\ub97c \uc815\uc758\ud55c\ub2e4. (\uc774 \uae30\uc0ac\uc5d0\uc11c\ub294 \ucf54\ub4dc\ub97c \uc6f9 \ud398\uc774\uc9c0\uc5d0 \ud1b5\ud569\ud558\ub294 \ubc29\ubc95\uc5d0 \ub300\ud55c \uc0c1\uc138 \uc124\uba85\uc744 \uc81c\uacf5\ud558\uc9c0 \uc54a\ub294\ub2e4.)<br \/>\n<a name=\"N100C2\"><\/a><strong>Listing 1. showPrice \ud568\uc218 \uc815\uc758\ud558\uae30<\/strong><\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>function showPrice(data) {\n    alert(\"Symbol: \" + data.symbol + \", Price: \" + data.price);\n}<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>JSON \ub370\uc774\ud130\ub97c \ub9e4\uac1c\ubcc0\uc218\ub85c \uc804\ub2ec\ud558\uc5ec \uc774 \ud568\uc218\ub97c \ud638\ucd9c\ud560 \uc218 \uc788\ub2e4.<\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>showPrice({symbol: 'IBM', price: 91.42}); \/\/ alerts: Symbol: IBM, Price: 91.42<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>\uc774\uc81c Listing 2\ucc98\ub7fc \uc774\ub4e4 \ub450 \ub2e8\uacc4\ub97c \uc6f9 \ud398\uc774\uc9c0\uc5d0 \ud3ec\ud568\ud560 \uc218 \uc788\ub294 \uc900\ube44\uac00 \uc644\ub8cc\ub418\uc5c8\ub2e4.<br \/>\n<a name=\"N100D4\"><\/a><strong>Listing 2. \uc6f9 \ud398\uc774\uc9c0\uc5d0 showPrice \ud568\uc218 \ubc0f \ub9e4\uac1c\ubcc0\uc218 \ud3ec\ud568\ud558\uae30<\/strong><\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>&lt;script type=\"text\/javascript\"&gt;\nfunction showPrice(data) {\n    alert(\"Symbol: \" + data.symbol + \", Price: \" + data.price);\n}\n&lt;\/script&gt;\n&lt;script type=\"text\/javascript\"&gt;showPrice({symbol: 'IBM', price: 91.42});&lt;\/script&gt;<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>\ud398\uc774\uc9c0\uac00 \ub85c\ub4dc\ub418\uba74 \uadf8\ub9bc 1\uacfc \uac19\uc740 \uacbd\uace0\uac00 \ud45c\uc2dc\ub41c\ub2e4.<br \/>\n<a name=\"ticker\"><\/a><strong>\uadf8\ub9bc 1. IBM \ud2f0\ucee4<\/strong><br \/>\n<img loading=\"lazy\" src=\"http:\/\/www.ibm.com\/developerworks\/kr\/library\/wa-aj-jsonp1\/ticker.jpg\" alt=\"IBM ticker\" width=\"326\" height=\"126\" \/><\/p>\n<p>\uc9c0\uae08\uae4c\uc9c0 \uc774 \uae30\uc0ac\uc5d0\uc11c\ub294 \uc815\uc801 JSON \ub370\uc774\ud130\ub97c \ub9e4\uac1c\ubcc0\uc218\ub85c \uc0ac\uc6a9\ud558\uc5ec JavaScript \ud568\uc218\ub97c \ud638\ucd9c\ud558\ub294 \ubc29\ubc95\uc744 \uc0b4\ud3b4\ubcf4\uc558\ub2e4. \ud558\uc9c0\ub9cc \ud568\uc218 \ud638\ucd9c\uc5d0\uc11c JSON \ub370\uc774\ud130\ub97c \ub3d9\uc801\uc73c\ub85c \ub7a9\ud551\ud558\uc5ec \ub3d9\uc801 \ub370\uc774\ud130\uc640 \ud568\uaed8 \ud568\uc218\ub97c \ud638\ucd9c\ud560 \uc218\ub3c4 \uc788\ub2e4. \uc774\ub97c \ub3d9\uc801 JavaScript \uc0bd\uc785 \uae30\uc220\uc774\ub77c\uace0 \ud55c\ub2e4. \uc774 \uae30\uc220\uc758 \uc791\ub3d9 \ubc29\ubc95\uc744 \ud655\uc778\ud558\ub824\uba74 ticker.js\ub77c\ub294 \ub3c5\ub9bd\ud615 JavaScript \ud30c\uc77c\uc5d0 \ub2e4\uc74c \ud589\uc744 \uc785\ub825\ud574\uc57c \ud55c\ub2e4.<\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>showPrice({symbol: 'IBM', price: 91.42});<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>\uc774\uc81c \uc6f9 \ud398\uc774\uc9c0\uc758 \uc2a4\ud06c\ub9bd\ud2b8\ub97c Listing 3\uc758 \ucf54\ub4dc\ucc98\ub7fc \ubcc0\uacbd\ud55c\ub2e4.<br \/>\n<a name=\"N100F8\"><\/a><strong>Listing 3. \ub3d9\uc801 JavaScript \uc0bd\uc785 \ucf54\ub4dc<\/strong><\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>&lt;script type=\"text\/javascript\"&gt;\n\/\/ This is our function to be called with JSON data\nfunction showPrice(data) {\n    alert(\"Symbol: \" + data.symbol + \", Price: \" + data.price);\n}\nvar url = \u201cticker.js\u201d; \/\/ URL of the external script\n\/\/ this shows dynamic script insertion\nvar script = document.createElement('script');\nscript.setAttribute('src', url);\n\n\/\/ load the script\ndocument.getElementsByTagName('head')[0].appendChild(script);\n&lt;\/script&gt;<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>Listing 3\uc758 \uc608\uc81c\uc5d0\uc11c, ticker.js\uc5d0 \ud30c\uc77c\uc5d0 \uc788\ub294 \ub3d9\uc801\uc73c\ub85c \uc0bd\uc785\ub41c JavaScript \ucf54\ub4dc\ub294 \uc2e4\uc81c JSON \ub370\uc774\ud130\ub97c \ub9e4\uac1c\ubcc0\uc218\ub85c \uc0ac\uc6a9\ud558\uc5ec<code>showPrice()<\/code>?\ud568\uc218\ub97c \ud638\ucd9c\ud55c\ub2e4.<\/p>\n<p>\uc55e\uc5d0\uc11c \uc124\uba85\ud55c \ub300\ub85c \ub3d9\uc77c \ucd9c\ucc98 \uc815\ucc45\uc740 \ub3d9\uc801 \uc2a4\ud06c\ub9bd\ud2b8 \uc694\uc18c\uc758 \ubb38\uc11c \ub0b4 \uc0bd\uc785\uc744 \ud5c8\uc6a9\ud558\uae30 \ub54c\ubb38\uc5d0 \ub2e4\ub978 \ub3c4\uba54\uc778\uc758 JavaScript\ub97c \ub3d9\uc801\uc73c\ub85c \uc0bd\uc785\ud558\uc5ec JSON \ub370\uc774\ud130\ub97c \uc804\ub2ec\ud560 \uc218 \uc788\ub2e4. \uc774\ucc98\ub7fc \ud568\uc218 \ud638\ucd9c\uc5d0 \ub7a9\ud551\ub41c JSON \ub370\uc774\ud130\ub97c JSONP(JSON with Padding)\ub77c\uace0 \ud55c\ub2e4. \uc774 \uc791\uc5c5\uc744 \uc218\ud589\ud558\ub824\uba74 \ucf54\ub4dc\ub97c \uc0bd\uc785\ud558\uae30 \uc804\uc5d0 \ucf5c\ubc31 \ud568\uc218\uac00 \ubbf8\ub9ac \uc815\uc758\ub418\uc5b4 \uc788\uc5b4\uc57c \ud55c\ub2e4. \uc774 \uc608\uc81c\uc5d0\uc11c\ub294?<code>showPrice()<\/code>\uac00 \ucf5c\ubc31 \ud568\uc218\uc774\ub2e4.<\/p>\n<p>\uadf8\ub7ec\ub098 JSONP \uc11c\ube44\uc2a4(\ub610\ub294 \uc6d0\uaca9 JSON \uc11c\ube44\uc2a4)\ub294 \uc0ac\uc6a9\uc790 \uc9c0\uc815 \ud568\uc218 \ud638\ucd9c\uc5d0\uc11c \ub9ac\ud134\ub41c JSON \ub370\uc774\ud130\uc5d0 \ub300\ud55c \ub7a9\ud551\uc744 \uc9c0\uc6d0\ud558\ub294 \ucd94\uac00 \uae30\ub2a5\uc744 \uac00\uc9c4 \uc6f9 \uc11c\ube44\uc2a4\uc774\ub2e4. \ub530\ub77c\uc11c \uc774 \ubc29\ubc95\uc744 \uc0ac\uc6a9\ud558\ub824\uba74 \uc6d0\uaca9 \uc11c\ube44\uc2a4\uc5d0\uc11c \ucf5c\ubc31 \ud568\uc218 \uc774\ub984\uc744 \uc694\uccad \ub9e4\uac1c\ubcc0\uc218\ub85c \ubc1b\uc544\uc57c \ud55c\ub2e4. \uadf8\ub7f0 \ub2e4\uc74c \uc6d0\uaca9 \uc11c\ube44\uc2a4\uc5d0\uc11c JSON \ub370\uc774\ud130\ub97c \ub9e4\uac1c\ubcc0\uc218\ub85c \uc804\ub2ec\ud558\ub294 \uc774 \ud568\uc218\uc5d0 \ub300\ud55c \ud638\ucd9c\uc774 \uc0dd\uc131\ub418\uba74 \uc774 \ud568\uc218\uac00 \ud074\ub77c\uc774\uc5b8\ud2b8 \uce21 \uc6f9 \ud398\uc774\uc9c0\uc5d0 \uc0bd\uc785\ub418\uc5b4 \ubc14\ub85c \uc2e4\ud589\ub41c\ub2e4.<\/p>\n<div><\/div>\n<p><a href=\"http:\/\/www.ibm.com\/developerworks\/kr\/library\/wa-aj-jsonp1\/index.html#ibm-pcon\">\uc704\ub85c<\/a><\/p>\n<p><a name=\"jquery_support\"><\/a>jQuery\uc758 JSONP \uc9c0\uc6d0<\/p>\n<p>jQuery \ubc84\uc804 1.2\ubd80\ud130\ub294 JSONP \ud638\ucd9c\uc5d0 \ub300\ud55c \ub124\uc774\ud2f0\ube0c \uc9c0\uc6d0\uc774 \uc81c\uacf5\ub418\uace0 \uc788\ub2e4. JSONP \ucf5c\ubc31\uc744 \uc9c0\uc815\ud55c \uacbd\uc6b0 \ub2e4\ub978 \ub3c4\uba54\uc778\uc5d0 \uc788\ub294 JSON \ub370\uc774\ud130\ub97c \ub85c\ub4dc\ud560 \uc218 \uc788\uc73c\uba70 JSONP \ucf5c\ubc31\uc740?<code>url?callback=<strong>?<\/strong><\/code>\ub77c\ub294 \uad6c\ubb38\uc744 \uc0ac\uc6a9\ud558\uc5ec \uc9c0\uc815\ud560 \uc218 \uc788\ub2e4.<\/p>\n<p>jQuery\uc5d0\uc11c\ub294?<strong>?<\/strong>\uac00 \ud638\ucd9c\ud560 \uc0dd\uc131\ub41c \ud568\uc218 \uc774\ub984\uc73c\ub85c \uc790\ub3d9 \ubcc0\ud658\ub41c\ub2e4. Listing 4\uc5d0\uc11c\ub294 \uc774 \ucf54\ub4dc\ub97c \ubcf4\uc5ec \uc900\ub2e4.<br \/>\n<a name=\"N10127\"><\/a><strong>Listing 4. JSONP \ucf5c\ubc31 \uc0ac\uc6a9\ud558\uae30<\/strong><\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>jQuery.getJSON(url+\"&amp;callback=?\", function(data) {\n    alert(\"Symbol: \" + data.symbol + \", Price: \" + data.price);\n});<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>\uc774\ub97c \uc704\ud574 jQuery\ub294 \uc2a4\ud06c\ub9bd\ud2b8\uac00 \uc0bd\uc785\ub420 \ub54c \ud638\ucd9c\ub418\ub294 \uc804\uc5ed \ud568\uc218\ub97c \ucc3d \uc624\ube0c\uc81d\ud2b8\uc5d0 \ucd94\uac00\ud55c\ub2e4. \uc774 \ud568\uc218\ub294 \uc644\ub8cc \ud6c4\uc5d0 \uc81c\uac70\ub41c\ub2e4. jQuery\ub294 \ub3c4\uba54\uc778 \ub0b4 \ud638\ucd9c\uc5d0 \ub300\ud574\uc11c\ub3c4 \ucd5c\uc801\ud654 \uae30\ub2a5\uc744 \uc81c\uacf5\ud55c\ub2e4. \ub3d9\uc77c\ud55c \ub3c4\uba54\uc778\uc5d0 \ub300\ud55c \uc694\uccad\uc774 \ubc1c\uc0dd\ud560 \uacbd\uc6b0 jQuery\ub294 \ud574\ub2f9 \uc694\uccad\uc744 \uc77c\ubc18\uc801\uc778 Ajax \uc694\uccad\uc73c\ub85c \ubcc0\ud658\ud55c\ub2e4.<\/p>\n<p><a name=\"sample_jsonp\"><\/a>JSONP \uc9c0\uc6d0\uc744 \uc0ac\uc6a9\ud558\ub294 \uc608\uc81c \uc11c\ube44\uc2a4<\/p>\n<p>\uc55e\uc758 \uc608\uc81c\uc5d0\uc11c\ub294 \uc815\uc801 \ud30c\uc77c(ticker.js)\uc744 \uc0ac\uc6a9\ud558\uc5ec JavaScript\ub97c \uc6f9 \ud398\uc774\uc9c0\uc5d0 \ub3d9\uc801\uc73c\ub85c \uc0bd\uc785\ud588\ub2e4. JSONP \uc751\ub2f5\uc744 \ub9ac\ud134\ud558\uae30\ub294 \ud558\uc9c0\ub9cc URL\uc5d0 \ucf5c\ubc31 \ud568\uc218 \uc774\ub984\uc744 \uc815\uc758\ud560 \uc218 \uc5c6\uc5c8\uae30 \ub54c\ubb38\uc5d0 JSONP \uc11c\ube44\uc2a4\uac00 \uc544\ub2c8\uc5c8\ub2e4. \uadf8\ub807\ub2e4\uba74 \uc2e4\uc81c JSONP \uc11c\ube44\uc2a4\ub85c \ubcc0\ud658\ud558\ub824\uba74 \uc5b4\ub5bb\uac8c \ud574\uc57c \ud560\uae4c? \uc774 \uae30\uc0ac\uc5d0\uc11c\ub294 \uc5ec\ub7ec \uac00\uc9c0 \ubc29\ubc95 \uc911\uc5d0\uc11c PHP\uc640 Java\ub97c \uc0ac\uc6a9\ud558\ub294 \ub450 \uac00\uc9c0 \uc608\uc81c\ub97c \uc124\uba85\ud55c\ub2e4.<\/p>\n<p>\uba3c\uc800 \uc11c\ube44\uc2a4\uc5d0\uc11c \uc694\uccad URL\uc5d0 \ud3ec\ud568\ub41c?<code>callback<\/code>?\ub9e4\uac1c\ubcc0\uc218\ub97c \ud5c8\uc6a9\ud55c\ub2e4\uace0 \uac00\uc815\ud558\uc790. (\ub9e4\uac1c\ubcc0\uc218 \uc774\ub984 \uc790\uccb4\ub294 \uc911\uc694\ud558\uc9c0 \uc54a\uc9c0\ub9cc \ud074\ub77c\uc774\uc5b8\ud2b8\uc640 \uc11c\ubc84\uc5d0\uc11c \ub3d9\uc77c\ud55c \uc774\ub984\uc744 \uc0ac\uc6a9\ud574\uc57c \ud55c\ub2e4.) \uadf8\ub9ac\uace0 \uc11c\ube44\uc2a4\uc5d0 \ub300\ud55c \uc694\uccad\uc774 \ub2e4\uc74c\uacfc \uac19\ub2e4\uace0 \uac00\uc815\ud558\uc790.<\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>http:\/\/www.yourdomain.com\/jsonp\/ticker?symbol=IBM&amp;callback=showPrice<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>\uc5ec\uae30\uc5d0\uc11c?<code>symbol<\/code>\uc740 \uc694\uccad\ub41c \ud2f0\ucee4 \uae30\ud638\ub97c \ub098\ud0c0\ub0b4\ub294 \uc694\uccad \ub9e4\uac1c\ubcc0\uc218\uc774\uba70,?<code>callback<\/code>\uc740 \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c \uc0ac\uc6a9\ud558\ub294 \ucf5c\ubc31 \ud568\uc218\uc758 \uc774\ub984\uc774\ub2e4. Listing 5\uc758 \ucf54\ub4dc\ub97c \uc0ac\uc6a9\ud558\uc5ec jQuery\uc758 JSONP \uc9c0\uc6d0\uc774 \ud3ec\ud568\ub41c \uc774 \uc11c\ube44\uc2a4\ub97c \ud638\ucd9c\ud560 \uc218 \uc788\ub2e4.<br \/>\n<a name=\"N10152\"><\/a><strong>Listing 5. \ucf5c\ubc31 \uc11c\ube44\uc2a4 \ud638\ucd9c<\/strong><\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>jQuery.getJSON(\"http:\/\/www.yourdomain.com\/jsonp\/ticker?symbol=IBM&amp;callback=?\",\nfunction(data) {\n    alert(\"Symbol: \" + data.symbol + \", Price: \" + data.price);\n});<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>\uc774 \ucf54\ub4dc\uc5d0\uc11c\ub294 \uc2e4\uc81c \ud568\uc218 \uc774\ub984 \ub300\uc2e0 ? \uae30\ud638\ub97c \ucf5c\ubc31 \ud568\uc218 \uc774\ub984\uc73c\ub85c \uc785\ub825\ud588\ub2e4. \uc774\ub294 jQuery\uac00 ? \uae30\ud638\ub97c \uc778\ub77c\uc778 \ud568\uc218\ub97c \ud638\ucd9c\ud558\ub294 \uc0dd\uc131\ub41c \ud568\uc218 \uc774\ub984(\uc608:?<code>jsonp1232617941775<\/code>)\uc73c\ub85c \ubc14\uafb8\uae30 \ub54c\ubb38\uc774\ub2e4. \uc774 \uae30\ub2a5\uc744 \ud65c\uc6a9\ud558\uba74?<code>showPrice()<\/code>\uc640 \uac19\uc740 \ud568\uc218\ub97c \uc790\uc720\ub86d\uac8c \uc815\uc758\ud560 \uc218 \uc788\ub2e4.<\/p>\n<p>Listing 6\uc5d0\uc11c\ub294 PHP\ub85c \uad6c\ud604\ud55c JSONP \uc11c\ube44\uc2a4\uc758 \uc77c\ubd80\ub97c \ubcf4\uc5ec \uc900\ub2e4.<br \/>\n<a name=\"N10168\"><\/a><strong>Listing 6. PHP\ub85c \uad6c\ud604\ud55c JSONP \uc11c\ube44\uc2a4\uc758 \uc77c\ubd80<\/strong><\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>$jsonData = getDataAsJson($_GET['symbol']);\necho $_GET['callback'] . '(' . $jsonData . ');';\n\/\/ prints: jsonp1232617941775({\"symbol\" : \"IBM\", \"price\" : \"91.42\"});<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>Listing 7\uc5d0\uc11c\ub294 \ub3d9\uc77c\ud55c \uae30\ub2a5\uc744 \uc218\ud589\ud558\ub294 Java\u2122 Servlet \uba54\uc18c\ub4dc\ub97c \ubcf4\uc5ec \uc900\ub2e4.<br \/>\n<a name=\"N10175\"><\/a><strong>Listing 7. Java Servlet\uc73c\ub85c \uad6c\ud604\ud55c JSONP \uc11c\ube44\uc2a4<\/strong><\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>@Override\nprotected void doGet(HttpServletRequest req, HttpServletResponse resp)\n  throws ServletException, IOException {\n\tString jsonData = getDataAsJson(req.getParameter(\"symbol\"));\n\tString output = req.getParameter(\"callback\") + \"(\" + jsonData + \");\";\n\n\tresp.setContentType(\"text\/javascript\");\n\n\tPrintWriter out = resp.getWriter();\n\tout.println(output);\n\t\/\/ prints: jsonp1232617941775({\"symbol\" : \"IBM\", \"price\" : \"91.42\"});\n}<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>\uadf8\ub807\ub2e4\uba74 \uc774\uc81c \ub2e8\uc77c \uc6f9 \ud398\uc774\uc9c0\uc5d0 \ud45c\uc2dc\ud558\uae30 \uc704\ud574 \uc368\ub4dc\ud30c\ud2f0 \uc11c\ubc84\uc758 \ucee8\ud150\uce20\ub97c \ud1b5\ud569\ud558\ub294 \ub9e4\uc2dc\uc5c5\uc744 \ube4c\ub4dc\ud558\ub824\uba74 \uc5b4\ub5bb\uac8c \ud574\uc57c\ud560\uae4c? \uac04\ub2e8\ud558\ub2e4. \uc368\ub4dc\ud30c\ud2f0 JSONP \uc11c\ube44\uc2a4\ub97c \uc0ac\uc6a9\ud574\uc57c \ud55c\ub2e4. \uc774 \uae30\uc0ac\uc5d0\uc11c\ub294 \uc774\ub4e4 \uc11c\ube44\uc2a4 \uc911 \uc77c\ubd80\ub97c \uc18c\uac1c\ud55c\ub2e4.<\/p>\n<p><a name=\"sample_jsonp_services\"><\/a>\ubc14\ub85c \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 JSONP \uc11c\ube44\uc2a4<\/p>\n<p>\uc774\uc81c JSONP\ub97c \uc0ac\uc6a9\ud558\ub294 \ubc29\ubc95\uc744 \uc54c\uace0 \uc788\uc73c\ubbc0\ub85c \ubc14\ub85c \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \uba87\uba87 JSONP \uc6f9 \uc11c\ube44\uc2a4\ub85c \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uacfc \ub9e4\uc2dc\uc5c5\uc744 \ube4c\ub4dc\ud574 \ubcfc \uc218 \uc788\ub2e4. \ub2e4\uc74c\uc740 \ud6c4\uc18d \uac1c\ubc1c \ud504\ub85c\uc81d\ud2b8\ub97c \uc704\ud55c \ucd9c\ubc1c\uc810\uc774\ub2e4. (\ud78c\ud2b8: \uc9c0\uc815\ub41c URL\uc744 \ube0c\ub77c\uc6b0\uc800\uc758 \uc8fc\uc18c \ud544\ub4dc\uc5d0 \ubd99\uc5ec \ub123\uc73c\uba74 \uacb0\uacfc JSONP \uc751\ub2f5\uc744 \ud655\uc778\ud560 \uc218 \uc788\ub2e4.)<\/p>\n<p>Digg API: Digg\uc758 \ucd5c\uc2e0 \uc2a4\ud1a0\ub9ac<\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>http:\/\/services.digg.com\/stories\/top?appkey=http%3A%2F%2Fmashup.com&amp;type=javascript\n&amp;callback=?<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>Geonames API: \uc6b0\ud3b8\ubc88\ud638\uc5d0 \ud574\ub2f9\ud558\ub294 \uc704\uce58 \uc815\ubcf4<\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>http:\/\/www.geonames.org\/postalCodeLookupJSON?postalcode=10504&amp;country=US&amp;callback=?<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>Flickr API: Flickr\uc758 \ucd5c\uc2e0 \uace0\uc591\uc774 \uc0ac\uc9c4<\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>http:\/\/api.flickr.com\/services\/feeds\/photos_public.gne?tags=cat&amp;tagmode=any\n&amp;format=json&amp;jsoncallback=?<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>Yahoo Local Search API: \uc6b0\ud3b8\ubc88\ud638 10504 \uc9c0\uc5ed\uc758 \ud53c\uc790 \uac80\uc0c9<\/p>\n<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>http:\/\/local.yahooapis.com\/LocalSearchService\/V3\/localSearch?appid=YahooDemo&amp;query=pizza\n&amp;zip=10504&amp;results=2&amp;output=json&amp;callback=?<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<div><\/div>\n<p><a href=\"http:\/\/www.ibm.com\/developerworks\/kr\/library\/wa-aj-jsonp1\/index.html#ibm-pcon\">\uc704\ub85c<\/a><\/p>\n<p><a name=\"cautionary_note\"><\/a>\uc8fc\uc758\ud560 \uc0ac\ud56d<\/p>\n<p>JSONP\ub294 \ub9e4\uc2dc\uc5c5\uc744 \ube4c\ub4dc\ud558\ub294 \ub370 \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \ub9e4\uc6b0 \uac15\ub825\ud55c \uae30\uc220\uc774\uae30\ub294 \ud558\uc9c0\ub9cc \ub3c4\uba54\uc778 \uac04 \ud1b5\uc2e0\uc5d0 \ud544\uc694\ud55c \ubaa8\ub4e0 \uc694\uad6c \uc0ac\ud56d\uc744 \ud574\uacb0\ud560 \uc218 \uc788\ub294 \ubc29\ubc95\uc740 \uc544\ub2c8\ub2e4. \uac1c\ubc1c \ub9ac\uc18c\uc2a4\ub97c \ud655\uc815\ud558\uae30 \uc804\uc5d0 \uc2e0\uc911\ud558\uac8c \uace0\ub824\ud574\uc57c \ud558\ub294 \ub2e8\uc810\uc774 \uc788\ub2e4. \ud2b9\ud788 JSONP \ud638\ucd9c\uc5d0 \ub300\ud55c \uc624\ub958 \ucc98\ub9ac \ubc29\ubc95\uc774 \uc5c6\ub2e4. \ub3d9\uc801 \uc2a4\ud06c\ub9bd\ud2b8 \uc0bd\uc785\uc774 \uc791\ub3d9\ub418\ub294 \uacbd\uc6b0\uc5d0\ub294 \ud568\uc218\uac00 \ud638\ucd9c\ub418\uc9c0\ub9cc \uadf8\ub807\uc9c0 \uc54a\uc740 \uacbd\uc6b0\uc5d0\ub294 \uc5b4\ub5a0\ud55c \uc791\uc5c5\ub3c4 \uc218\ud589\ub418\uc9c0 \uc54a\ub294\ub2e4. \uc989, \uc624\ub958\ub3c4 \ubc1c\uc0dd\ud558\uc9c0 \uc54a\uace0 \uc791\uc5c5\ub9cc \uc2e4\ud328\ud560 \ubfd0\uc774\ub2e4. \uc608\ub97c \ub4e4\uc5b4, \uc11c\ubc84\uc758 404 \uc624\ub958\ub97c \ubc1b\uc744 \uc218 \uc5c6\ub2e4. \uc694\uccad\uc744 \ucde8\uc18c\ud558\uac70\ub098 \ub2e4\uc2dc \uc2dc\uc791\ud560 \uc218\ub3c4 \uc5c6\ub2e4. \uadf8\ub7ec\ub098 \uc77c\uc815 \uc2dc\uac04\uc774 \uacbd\uacfc\ub41c \ud6c4 \uc2dc\uac04 \uc885\ub8cc\ub85c \uc694\uccad\uc744 \uc911\uc9c0\ud560 \uc218 \uc788\ub2e4. (jQuery\uc758 \ud6c4\uc18d \ubc84\uc804\uc5d0\uc11c\ub294 JSONP \uc694\uccad\uc5d0 \ub300\ud55c \uc911\ub2e8 \uae30\ub2a5\uc774 \uc9c0\uc6d0\ub420 \uac83\uc774\ub2e4.)<\/p>\n<p>JSONP\uc758 \ub610 \ub2e4\ub978 \uc8fc\uc694 \ub2e8\uc810\uc740 \uc2e0\ub8b0\ud560 \uc218 \uc5c6\ub294 \uc11c\ube44\uc2a4\uc640 \ud568\uaed8 \uc0ac\uc6a9\ud560 \uacbd\uc6b0 \ub9e4\uc6b0 \uc704\ud5d8\ud560 \uc218 \uc788\ub2e4\ub294 \uac83\uc774\ub2e4. JSONP \uc11c\ube44\uc2a4\uac00 \ud568\uc218 \ud638\ucd9c\ub85c \ub7a9\ud551\ub41c JSON \uc751\ub2f5\uc744 \ub9ac\ud134\ud558\uace0 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uc774 \uc751\ub2f5\uc744 \uc2e4\ud589\ud558\ubbc0\ub85c \ud638\uc2a4\ud2b8\ud558\ub294 \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc774 \ub2e4\uc591\ud55c \uacf5\uaca9\uc5d0 \ub178\ucd9c\ub420 \uc218 \uc788\ub2e4. JSONP \uc11c\ube44\uc2a4\ub97c \uc0ac\uc6a9\ud558\ub824\uba74 \ub0b4\uc7ac\ub41c \uc704\ud5d8 \uc694\uc18c\ub97c \uc798 \uc54c\uace0 \uc788\uc5b4\uc57c \ud55c\ub2e4. \uc790\uc138\ud55c \uc815\ubcf4\ub294?<a href=\"http:\/\/www.ibm.com\/developerworks\/kr\/library\/wa-aj-jsonp1\/index.html#resources\">\ucc38\uace0\uc790\ub8cc<\/a>\uc5d0\uc11c \ubcfc \uc218 \uc788\ub2e4.<\/p>\n<div><\/div>\n<p><a href=\"http:\/\/www.ibm.com\/developerworks\/kr\/library\/wa-aj-jsonp1\/index.html#ibm-pcon\">\uc704\ub85c<\/a><\/p>\n<p><a name=\"conclusion\"><\/a>\uacb0\ub860<\/p>\n<p>\uc774 \uc5f0\uc7ac \uae30\uc0ac\uc758 \uccab \ubc88\uc9f8 \uae30\uc0ac\uc5d0\uc11c\ub294 JSONP\uc640 jQuery\ub97c \uacb0\ud569\ud558\uc5ec \uac15\ub825\ud55c \ub9e4\uc2dc\uc5c5\uc744 \ube60\ub974\uac8c \ube4c\ub4dc\ud558\ub294 \ubc29\ubc95\uc5d0 \ub300\ud574 \uc0b4\ud3b4\ubcf4\uc558\ub2e4. \uc5ec\uae30\uc11c \uc124\uba85\ud55c \uc8fc\uc81c\ub294 \ub2e4\uc74c\uacfc \uac19\ub2e4.<\/p>\n<ul>\n<li>\ub3d9\uc77c \ucd9c\ucc98 \uc815\ucc45\uc73c\ub85c \uc778\ud55c \ube0c\ub77c\uc6b0\uc800 \uc81c\ud55c\uacfc \uc774\ub7ec\ud55c \uc81c\ud55c\uc744 \ud574\uacb0\ud558\ub294 \ubc29\ubc95<\/li>\n<li>\ub3d9\uc77c \ucd9c\ucc98 \uc815\ucc45 \uc81c\ud55c\uc744 \ud53c\ud560 \uc218 \uc788\ub294 \ud6a8\uacfc\uc801\uc778 \ub3c4\uba54\uc778 \uac04 \ud1b5\uc2e0 \uae30\uc220\ub85c\uc11c\uc758 JSONP<\/li>\n<li>\ub9e4\uc2dc\uc5c5\uc744 \ube60\ub974\uac8c \ube4c\ub4dc\ud560 \uc218 \uc788\ub3c4\ub85d \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \uac1c\ubc1c\uc790\ub97c \uc9c0\uc6d0\ud558\ub294 JSONP<\/li>\n<li>\uc0d8\ud50c JSONP \uc11c\ube44\uc2a4\uc640 \uc0ac\uc6a9\ubc95: \ud2f0\ucee4 \uc11c\ube44\uc2a4<\/li>\n<\/ul>\n<p>\uc774 \uc5f0\uc7ac \uae30\uc0ac\uc758 \ub2e4\uc74c \uae30\uc0ac\uc5d0\uc11c\ub294 YQL(Yahoo Query Language)\uc744 \uc6f9 \ub370\uc774\ud130\uc5d0 \ub300\ud55c \ucffc\ub9ac, \ud544\ud130 \ubc0f \uacb0\ud569 \uae30\ub2a5\uc744 \uc81c\uacf5\ud558\ub294 \ub2e8\uc77c \uc5d4\ub4dc\ud3ec\uc778\ud2b8 JSONP \uc11c\ube44\uc2a4\ub85c\uc11c \uc0b4\ud3b4\ubcfc \uac83\uc774\ub2e4. \ub610\ud55c YQL\uacfc jQuery\ub97c \uc0ac\uc6a9\ud558\ub294 \uc0d8\ud50c \ub9e4\uc2dc\uc5c5 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\ub3c4 \ube4c\ub4dc\ud560 \uac83\uc774\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p><a name=\"resources\"><\/a>\ucc38\uace0\uc790\ub8cc<\/p>\n<ul>\n<li>Java \uc5b8\uc5b4 \ubc0f \uae30\ud0c0 \uc5b8\uc5b4\ub97c \uc704\ud55c?<a href=\"http:\/\/json.org\/\">JSON<\/a>(JavaScript Object Notation) API\uc5d0 \ub300\ud574 \uc54c\uc544\ubcf4\uc790.<\/li>\n<li>&#8220;<a href=\"http:\/\/www.ibm.com\/developerworks\/kr\/library\/wa-ajaxintro10\/\">Ajax \ub9c8\uc2a4\ud130\ud558\uae30, Part 10: \ub370\uc774\ud130 \uc804\uc1a1\uc5d0 JSON \uc0ac\uc6a9\ud558\uae30(\ud55c\uae00)<\/a>&#8220;(developerWorks, 2007\ub144 3\uc6d4)\ub97c \uc77d\uace0 Ajax \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \ub370\uc774\ud130 \uad50\ud658 \ud615\uc2dd\uc758 JSON\uc5d0 \ub300\ud574 \uc54c\uc544\ubcf4\uc790.<\/li>\n<li>\uc138 \ud3b8\uc758 \uc5f0\uc7ac \uae30\uc0ac\ub85c \uc791\uc131\ub41c &#8220;<a href=\"http:\/\/www.ibm.com\/developerworks\/web\/library\/wa-jquery1\/\">jQuery\ub85c \uc791\uc5c5\ud558\uae30<\/a>&#8220;(developerWorks, 2008\ub144 9\uc6d4)\uc5d0\uc11c jQuery\uc5d0 \ub300\ud574 \uc0b4\ud3b4\ubcf4\uc790.<\/li>\n<li><a href=\"http:\/\/code.google.com\/p\/browsersec\/wiki\/Part2#Same-origin_policy\">Browser Security Handbook<\/a>\uc5d0 \uc788\ub294 \ub3d9\uc77c \ucd9c\ucc98 \uc815\ucc45\uc5d0 \ub300\ud55c \uc790\uc138\ud55c \uc124\uba85\uc744 \uc77d\uc5b4\ubcf4\uc790.<\/li>\n<li>&#8220;<a href=\"http:\/\/www.ibm.com\/developerworks\/kr\/library\/x-ajaxsecurity.html\">Ajax \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \ubcf4\uc548 \uc704\ud611 \uadf9\ubcf5\ud558\uae30(\ud55c\uae00)<\/a>&#8220;(developerWorks, 2007\ub144 6\uc6d4)\uc5d0\uc11c\ub294 \ub9e4\uc2dc\uc5c5 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \ubcf4\uc548\uacfc \uad00\ub828\ub41c \ud301\uacfc \ud65c\uc6a9 \uc0ac\ub840\ub97c \uc81c\uacf5\ud55c\ub2e4.<\/li>\n<li>&#8220;<a href=\"http:\/\/www.ibm.com\/developerworks\/xml\/library\/x-securemashups\/\">Shaping the future of secure Ajax mashups<\/a>&#8220;(developerWorks, 2007\ub144 4\uc6d4)\uc5d0\uc11c\ub294 \ud558\uc774\ube0c\ub9ac\ub4dc \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \uc704\ud574 \ube0c\ub77c\uc6b0\uc800\ub97c \ud5a5\uc0c1\uc2dc\ud0a4\ub294 \ubc29\ubc95\uc5d0 \ub300\ud574 \uc124\uba85\ud55c\ub2e4.<\/li>\n<li><a href=\"http:\/\/www.ibm.com\/developerworks\/apps\/SendTo?bookstore=safari\">\uae30\uc220 \uc11c\uc810<\/a>\uc5d0\uc11c \ub2e4\uc591\ud55c \uae30\uc220 \uc8fc\uc81c\uc640 \uad00\ub828\ub41c \uc11c\uc801\uc744 \uc0b4\ud3b4\ubcf4\uc790.<\/li>\n<\/ul>\n<p><a name=\"author\"><\/a>\ud544\uc790\uc18c\uac1c<\/p>\n<div>\n<div><img loading=\"lazy\" src=\"http:\/\/www.ibm.com\/developerworks\/i\/p-sozses.jpg\" alt=\"Photo of Seda Ozses\" width=\"64\" height=\"80\" \/><a name=\"author1\"><\/a>Seda ?zses\ub294 ibm.com \uae30\uc5c5 \uc6f9 \ub9c8\uc2a4\ud130 \ud300\uc758 \uad6c\uc131\uc6d0\uc774\ub2e4. ibm.com \uae30\uc5c5 \uc6f9 \ud3ec\ud138\uc744 \ub2f4\ub2f9\ud558\uace0 \uc788\uc73c\uba70, XSL \uc791\uc5c5\uacfc \ud300\uc758 \uc694\uad6c\uc0ac\ud56d\uc744 \uad00\ub9ac\ud558\ub294 \uc5c5\ubb34\ub97c \ub9e1\uace0 \uc788\ub2e4.<\/div>\n<div><img loading=\"lazy\" src=\"http:\/\/www.ibm.com\/developerworks\/i\/p-sergul.jpg\" alt=\"Photo of Salih Ergul\" width=\"64\" height=\"80\" \/><a name=\"author2\"><\/a>Salih Erg?l\uc740 \ud1b5\uc2e0 \ubc0f \uc740\ud589 \uc0b0\uc5c5\uc758 \ub300\uaddc\ubaa8 \uc5c5\ubb34 \uc911\uc2ec\uc758 \uc5d4\ud130\ud504\ub77c\uc774\uc988 \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \ud1b5\ud569 \ud504\ub85c\uc81d\ud2b8\uc5d0 \ud2b9\ud654\ub41c \uc790\uc601\uc5c5\uc790\ub85c\uc11c \ud65c\ub3d9 \uc911\uc778 IT \uc544\ud0a4\ud14d\ud2b8\uc774\ub2e4. Java \ud504\ub85c\uadf8\ub798\ubc0d\uc5d0 \uad00\ud55c \uc5ec\ub7ec \ud3b8\uc758 \uae30\uc0ac\ub97c \uc791\uc131\ud558\uae30\ub3c4 \ud588\uc73c\uba70, \ud604\uc7ac \uc740\ud589 \uc0b0\uc5c5\uacfc \uad00\ub828\ub41c \ud504\ub85c\uc81d\ud2b8\uc5d0 \ucc38\uc5ec\ud558\uace0 \uc788\ub2e4.<\/div>\n<\/div>\n<div><\/div>\n<div>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<\/div>\n<div>\n<pre>\ud50c\ub798\ucee4\ub85c\ubd80\ud130 \ubc1b\uc740 \ub370\uc774\ud130<\/pre>\n<pre>({\n\t\t\"title\": \"Recent Uploads tagged cat\",\n\t\t\"link\": \"http:\/\/www.flickr.com\/photos\/tags\/cat\/\",\n\t\t\"description\": \"\",\n\t\t\"modified\": \"2012-02-04T08:53:30Z\",\n\t\t\"generator\": \"http:\/\/www.flickr.com\/\",\n\t\t\"items\": [\n\t   {\n\t\t\t\"title\": \"Little Tiger \",\n\t\t\t\"link\": \"http:\/\/www.flickr.com\/photos\/cougars\/6815899361\/\",\n\t\t\t\"media\": {\"m\":\"http:\/\/farm8.staticflickr.com\/7149\/6815899361_d9d8a51723_m.jpg\"},\n\t\t\t\"date_taken\": \"2012-01-02T01:32:24-08:00\",\n\t\t\t\"description\": \" &lt;p&gt;&lt;a href=\"http:\/\/www.flickr.com\/people\/cougars\/\"&gt;Nick Boren Photography&lt;\/a&gt; posted a photo:&lt;\/p&gt; &lt;p&gt;&lt;a href=\"http:\/\/www.flickr.com\/photos\/cougars\/6815899361\/\" title=\"Little Tiger \"&gt;&lt;img src=\"http:\/\/farm8.staticflickr.com\/7149\/6815899361_d9d8a51723_m.jpg\" width=\"240\" height=\"159\" alt=\"Little Tiger \" \/&gt;&lt;\/a&gt;&lt;\/p&gt; &lt;p&gt;Cloie.... our little tiger.&lt;br \/&gt; &lt;br \/&gt; Nick Boren Photography ? 2011&lt;br \/&gt; &lt;br \/&gt; No use of this image in any form without my consent. Copyright laws are in effect.&lt;\/p&gt;\",\n\t\t\t\"published\": \"2012-02-04T08:53:30Z\",\n\t\t\t\"author\": \"nobody@flickr.com (Nick Boren Photography)\",\n\t\t\t\"author_id\": \"7685331@N02\",\n\t\t\t\"tags\": \"family house thanks oregon cat for pacific northwest little tiger member viewing the cloie of\"\n\t   }}<\/pre>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\ucd9c\ucc98 \ud83d\ude15http:\/\/www.ibm.com\/developerworks\/kr\/library\/wa-aj-jsonp1\/index.html \uc18c\uac1c Ajax(Asynchronous JavaScript and XML)\ub294 \ud754\ud788 Web 2.0 \uc0ac\uc774\ud2b8\ub77c\uace0 \ud558\ub294 \uc0c8\ub85c\uc6b4 \uc138\ub300\uc758 \uc6f9 \uc0ac\uc774\ud2b8\ub97c \uc120\ub3c4\ud558\ub294 \ud575\uc2ec \uae30\uc220\uc774\ub2e4. Ajax\ub97c \uc0ac\uc6a9\ud558\uba74 \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \ud45c\uc2dc \ubc0f \ub3d9\uc791\uc5d0 \uc601\ud5a5\uc744 \uc8fc\uc9c0 \uc54a\uace0 \ubc31\uadf8\ub77c\uc6b4\ub4dc\uc5d0\uc11c&hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/blog.goorigo.com\/index.php?rest_route=\/wp\/v2\/posts\/510"}],"collection":[{"href":"https:\/\/blog.goorigo.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.goorigo.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.goorigo.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.goorigo.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=510"}],"version-history":[{"count":0,"href":"https:\/\/blog.goorigo.com\/index.php?rest_route=\/wp\/v2\/posts\/510\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.goorigo.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=510"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.goorigo.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=510"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.goorigo.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=510"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}