JSON形式のポストデータをコンソール画面上に表示させるためにはどうすれば良いでしょうか?
いつもお世話になっています。
下記の質問についてご存知の方がいらっしゃいましたらご教示を願います。
【質問の主旨】
下記のPHPとJavaScriptのコードを用いて、fetch_json.php
にアクセスした時のコンソール画面に、「こんにちは echizenya さん」と表示させるためにはどうすれば良いでしょうか?
<?php
$data = json_decode(file_get_contents('php://input'));
print('こんにちは' . $data->name . 'さん!');
let data = { mid: 'y001', name: 'echizenya', age: 43};
// JSON
fetch('fetch_json.php', {
method: 'POST',
headers: {
'content-type': 'application/json',
},
body: JSON.stringify(data),
})
.then(function(response) {
return response.text();
})
.then(function(text) {
console.log(text);
});
【質問の補足】
【質問の主旨】に対して下記の4点を補足説明します。
1.
現在、ローカル開発環境上でfetch_json.php
を実行すると下記の画面が表示されます。
表示された画面の特徴として以下の3点が挙げられます。
Notice: Trying to get property of non-object
と注意文が表示されるfetch_json.js
で使っているdata
のname
プロパティのechizenya
が画面に表示されない。- コンソール画面には何も表示されない
2.
fetch_json.php
でNotice: Trying to get property of non-object
とありますが、dataオブジェクトに対するnameプロパティは、fetch_json.js
の1行目で定義されていると思います。
3.
ローカル開発環境はWockerを使用しています。
https://wocker.dev/
4.
今回の質問は、「JavaScript逆引きレシピ 第2版」のP483の内容に基づいて投稿しています。
https://www.shoeisha.co.jp/book/detail/9784798157573
以上、ご確認のほどよろしくお願い申し上げます。