Symfony PUT空

时间:2015-11-19 09:36:09

标签: php symfony put

在API中的Symfony我有PUT方法,当我在Postman中创建PUT url并在body中添加字段并发送我进入操作但是有空请求而不明白为什么?我尝试使用ApiDoc中的参数而没有尝试使用注释* @Put(“/ projects / {slug}”,name =“put”,requirements = {“id”=“\ d +”})但仍然是空的请求。 scrren

 /**
 * Update existing Projects from the submitted data or create a new Projects at a specific location.
 * @Put("/projects/{slug}", name="put", requirements={"id"="\d+"})
 * @ApiDoc(
 * resource = true,
 * description = "Create/Update single Projects",
 *  parameters={
 *      {"name"="level", "dataType"="string", "required"=true, "description"="project choice - Senior, Middle+, Middle, Middle/Junior, Junior"},
 *      {"name"="main_skill", "dataType"="string", "required"=true, "description"="mainskill project"},
 *      {"name"="name", "dataType"="string", "required"=true, "description"="additional information"},
 *      {"name"="duration", "dataType"="string", "required"=true, "description"="1 year+, 3 months+, 2 weeks"},
 *      {"name"="location", "dataType"="string", "required"=true, "description"="location project"},
 *      {"name"="expected_budget", "dataType"="string", "required"=true, "description"="expected_budget project"},
 *      {"name"="start_date", "dataType"="string", "required"=true, "description"="start date project"},
 *      {"name"="description", "dataType"="string", "required"=false, "description"="description"},
 *      {"name"="employment", "dataType"="string", "required"=true, "description"="employment"},
 *      {"name"="project_skills", "dataType"="array", "required"=true, "description"="project skills project"},
 *      {"name"="markets", "dataType"="array", "required"=true, "description"="project markets "},
 *      {"name"="platforms", "dataType"="array", "required"=true, "description"="project platforms "},
 *      {"name"="token", "dataType"="string", "required"=true, "description"="is equally md5('email'.secret_word)"},
 *      {"name"="speciality", "dataType"="array", "required"=true, "description"="project speciality"},
 *      {"name"="type", "dataType"="string", "required"=false, "description"="project type - fixed_cost or time_and_material"},
 *      {"name"="rate", "dataType"="integer", "required"=true, "description"="project rate"}
 *
 *  },
 * statusCodes = {
 * 200 = "Projects successful update",
 * 404 = "Return when project with current slug not isset",
 * 101 = "Secret token is not valid"
 * },
 *  section="Project"
 * )
 *
 *
 * @param  Request $request
 * @param  string  $slug
 * @return mixed
 */
public function putProjectAction(Request $request, $slug)
{
    $data = $request->request->all();

$ data为空,我看起来是$ request而不是找到我的字段( 当我尝试POST方法时,我会在请求中看到我的字段 请帮忙

1 个答案:

答案 0 :(得分:0)

与邮递员一起尝试它有效... PUT请求。在有效负载选项卡中,我输入:

param=toto

我有以下输出:

object(Symfony\Component\HttpFoundation\ParameterBag)#11 (1) { ["parameters":protected]=> array(1) { ["param"]=> string(4) "toto" } }

所以这可能是对Postman的错误使用。