似乎没有任何明确的文档来收集在PHP中运行的Azure函数的GET / POST请求。
我已经尝试了通常的var_dump和那些收集数据的差异。包括,当将HTTP请求集成为输入时,将变量定义为“req”。
即使指定$ _REQUEST ['req']似乎也没有将POST / GET数据加载到函数中。
顺便说一句,如果您碰巧知道如何将数据加载到集成的DocumentDB输出中,那将同样有用。
答案 0 :(得分:1)
没有得到回复,所以一直在调查。它似乎是默认的" req"在使用file_get_contents(getenv('req'))
如果您要在POST或GET中查找实际的请求参数,这尤其无益。
你应该找到var_dump($_SERVER)
它所需的一切,但你得到了你需要的价值。如果其他人找到更优雅的方式来获得价值,请发布。
顺便说一句,倾销到DocumentDB绑定可以通过以下方式完成:
file_put_contents(getenv('VariableName'), "{ \"JSON\" : \"JSON Details\" } ");
答案 1 :(得分: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>
环境变量访问它们。