使用 curl 测试我的 API 时 Lumen 中的空数据

Empty data in Lumen when testing my API using curl

我有一个 api 端点,我通过 POST 接收数据。我的控制器签名如下所示:

public function handle(Request $request)

当我去测试我的端点时,我是 运行 一个非常基本的测试,就像这样:

curl -X POST -H 'Content-Type: text/xml' -d '<XML>data</XML>' http://URL/api

当我\Log::debug($request)时,我一无所获。即使我 \Log::debug($_POST) 我仍然什么也得不到。

Lumen 中是否有默认打开的过滤器?我有点不知所措。也许我的 curl 语句有误?

您正在发送请求正文中的 XML。因此,要检索请求的内容,您必须像这样使用 $request->getContent

public function handle(Request $request)
{
    \Log::debug($request->getContent());
}