2017-07-02 25 views
1

PHPで動作するAzure関数へのGET/POST要求を収集するための明確な文書はありません。

私は通常のvar_dumpとそれらのデータの収集のための分散を試しました。 HTTP要求を入力として統合する場合、変数を「req」と定義することを含みます。

$ _REQUEST ['req']を指定しても、POST/GETデータが関数に読み込まれないようです。

また、統合されたDocumentDB出力にデータをロードする方法を知っていれば、同様に役立ちます。

答えて

0

REQ_QUERY_<NAME>/REQ_HEADERS_<NAME>環境変数を参照して、要求パラメータ/ヘッダーにアクセスできます。例えば:あなたの関数は、ルート・パラメータを持っている場合

<?php 
    /* request body */ 
    $body = file_get_contents(getenv('req')); 
    $body = rtrim($body, "\n\r"); 
    fwrite(STDOUT, "PHP script processed request body '$body'\r\n"); 

    /* access query parameter 'test' */ 
    $test = getenv('req_query_test'); 
    fwrite(STDOUT, "Parameter Test='$test'\r\n"); 

    /* access header 'test' */ 
    $test = getenv('req_headers_test'); 
    fwrite(STDOUT, "Header Test='$test'\r\n"); 
?> 

同様に、彼らはREQ_PARAMS_<NAME>環境変数を介してアクセスすることができます。

1

回答が得られなかったため、調査を続けました。デフォルトの「req」値は、使用時にPOST要求でのリクエストボディのみを提供するようですfile_get_contents(getenv('req'))

これは、POSTまたはGETで実際のリクエストパラメータを検索する場合に特に役に立ちません。

必要なものはすべてvar_dump($_SERVER)で見つかるはずですが、必要な値が得られます。他の誰かが値を達成するよりエレガントな方法を見つけた場合は、捨ててください。

脇に、DocumentDBバインディングへのダンプアウトは、次の方法で行うことができます。 file_put_contents(getenv('VariableName'), "{ \"JSON\" : \"JSON Details\" } ");

関連する問題