【发布时间】:2014-12-19 22:01:04
【问题描述】:
我想我已经阅读了所有关于在 Slim 框架(在 Windows XAMPP 上运行)上获取 PUT 请求正文的问题的答案。似乎没有一个解决方案对我有用,所以我可能还缺少另一个警告。
我的php代码如下:
require 'Slim/Slim.php';
\Slim\Slim::registerAutoloader();
$app = new \Slim\Slim();
$app->run();
$app->put('/calendar/update/:id', function($id) use ($app){
$ev = json_decode($app->request()->getBody());
echo var_dump($ev); // NULL
}
我一直在 PHPStorm 的 REST 测试器中对其进行测试,同时使用参数和查询字符串 - 无济于事。我也尝试在我的 ajax 调用中明确设置 contentType: application/x-www-form-urlencoded。
这里好像迷路了……
【问题讨论】:
-
对于 json 请求 application/x-www-form-urlencoded 是错误的。请改用 application/json。
-
@MikaTuupola 谢谢,但 json 通过
$app->contentType('application/json');在整个 Slim 应用程序中设置为默认值 - 我使用 x-www... 仅作为测试尝试。