teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

修正

2016/10/17 04:42

投稿

blossan
blossan

スコア154

title CHANGED
File without changes
body CHANGED
@@ -43,7 +43,7 @@
43
43
 
44
44
  $this->autoRender = FALSE;
45
45
 
46
- $callback_key = '********';
46
+ $callback_key = '※※※※※※※※※※※';
47
47
  if($this->request->is('post')) {
48
48
  $put_data = json_decode($this->request->data, true);
49
49
 

1

補足

2016/10/17 04:42

投稿

blossan
blossan

スコア154

title CHANGED
File without changes
body CHANGED
@@ -4,4 +4,52 @@
4
4
  こちらのコールバック情報から特定の値を cakephp で受け取りたいと考えています。
5
5
  json で送信されるので、$put_data = json_decode($this->request->data)と設定しているのですが、空白しか取得できません。特にエラーもありません。
6
6
  また、json_encode($this->request->data)では、しっかりとデータを確認できます。
7
- どのようにコールバック内の特定の値を取得すればよいのでしょうか?
7
+ どのようにコールバック内の特定の値を取得すればよいのでしょうか?
8
+
9
+ 追記
10
+ リクエスト内容は、上記サイトの一番下のコールバックテスト機能を利用しています。
11
+ 送られた内容は、以下になります。
12
+ 2016-10-17 13:26:31 Debug: {
13
+ "order": {
14
+ "amount": "10000.0",
15
+ "button_name": "ボタン #1",
16
+ "confirmed_at": "",
17
+ "created_at": "2016-10-17 04:26:30 UTC",
18
+ "currency": "JPY",
19
+ "custom": "num111",
20
+ "customer": {
21
+ "address": "",
22
+ "email": "",
23
+ "name": ""
24
+ },
25
+ "event": {
26
+ "type": "received"
27
+ },
28
+ "id": "XDToOaoiZg",
29
+ "status": "received",
30
+ "total_btc": {
31
+ "amount": "0.1",
32
+ "currency": "BTC"
33
+ },
34
+ "total_native": {
35
+ "amount": "10000.0",
36
+ "currency": "JPY"
37
+ }
38
+ }
39
+ }
40
+
41
+ getCallbackで受け取り処理をしています。
42
+ public function getCallback() {
43
+
44
+ $this->autoRender = FALSE;
45
+
46
+ $callback_key = '********';
47
+ if($this->request->is('post')) {
48
+ $put_data = json_decode($this->request->data, true);
49
+
50
+ file_put_contents('getCallback.txt', $put_data);
51
+ Log::write('debug', print_r($put_data, true));
52
+
53
+ }
54
+ }
55
+ json_encode をすると、値を取得できますが、json_decode では、空白になってしまいます。