[Svn-src-all:4334] [version-2_13-dev 23248] #2440 APIの情報をJSONPで取得できるようにする
pineray
admin @ mail.ec-cube.net
2013年 10月 22日 (火) 20:46:52 JST
Subversion committed to /home/svn/open 23248
http://svn.ec-cube.net/open_trac/changeset/23248
┌────────────────────────────┐
│更新者 : pineray │
│更新日時: 2013-10-22 20:46:51 +0900 (火, 22 10月 2013)│
└────────────────────────────┘
Log:
--------------------------------------------------------
#2440 APIの情報をJSONPで取得できるようにする
Changed: [U:修正,A:追加,D:削除]
--------------------------------------------------------
U branches/version-2_13-dev/data/class/api/SC_Api_Utils.php
U branches/version-2_13-dev/data/class/pages/api/LC_Page_Api_Json.php
変更: branches/version-2_13-dev/data/class/api/SC_Api_Utils.php
===================================================================
--- branches/version-2_13-dev/data/class/api/SC_Api_Utils.php 2013-10-18 02:49:18 UTC (rev 23247)
+++ branches/version-2_13-dev/data/class/api/SC_Api_Utils.php 2013-10-22 11:46:51 UTC (rev 23248)
@@ -192,9 +192,17 @@
public function sendResponseJson($response_outer_name, &$arrResponse)
{
- header('Content-Type: application/json; charset=UTF-8');
- $arrResponse['response_name'] = $response_outer_name;
- echo SC_Utils_Ex::jsonEncode($arrResponse);
+ if (isset($arrResponse["callback"])) {
+ $callback = $arrResponse["callback"];
+ unset($arrResponse["callback"]);
+ header('Content-Type: application/javascript; charset=UTF-8');
+ $arrResponse['response_name'] = $response_outer_name;
+ echo $callback . "(" . SC_Utils_Ex::jsonEncode($arrResponse) . ")";
+ } else {
+ header('Content-Type: application/json; charset=UTF-8');
+ $arrResponse['response_name'] = $response_outer_name;
+ echo SC_Utils_Ex::jsonEncode($arrResponse);
+ }
}
public function sendResponsePhp($response_outer_name, &$arrResponse)
変更: branches/version-2_13-dev/data/class/pages/api/LC_Page_Api_Json.php
===================================================================
--- branches/version-2_13-dev/data/class/pages/api/LC_Page_Api_Json.php 2013-10-18 02:49:18 UTC (rev 23247)
+++ branches/version-2_13-dev/data/class/pages/api/LC_Page_Api_Json.php 2013-10-22 11:46:51 UTC (rev 23248)
@@ -64,6 +64,11 @@
$arrParam = $_REQUEST;
list($response_outer, $arrResponse) = SC_Api_Operation::doApiAction($arrParam);
+
+ if (isset($arrParam["callback"])) {
+ $arrResponse["callback"] = $arrParam["callback"];
+ }
+
SC_Api_Operation_Ex::sendApiResponse('json', $response_outer, $arrResponse);
SC_Response_Ex::actionExit();
}
Svn-src-all メーリングリストの案内