0

JSONペイロードを使用して別のシステムからPOSTを受信するための簡単なPHPを作成しています。そのリクエストはContent-Type:application/jsonです。

開始点としてjsonをtxtファイルにダンプしようとしているだけですが、それは発生していません。これがPHPファイルです。提案/修正をいただければ幸いです。

<?php
    ini_set("display_errors", "On");
    session_start();

    $raw_json = file_get_contents('php://input');
    $cooked_json = json_decode($raw_json);


    $myfile = fopen('/home/wgordon/log.txt','a');
    $fp = fwrite($myfile, $cooked_json);
    fclose($myfile);

?>

4

1 に答える 1

2

見た目からすると、$raw_jsonの初期値は文字列になります。配列としてアクセスしようとすると、小さい文字列のみが返されます。これをjson_decodeに渡すと、おそらくnullが返されます。

$raw_jsonの最初の値を検査する必要があります。名前と値のペアのクエリ文字列として入力される場合は、配列のように扱う前に、(split()などを使用して)デコードする必要があります。

于 2012-11-19T03:36:19.743 に答える