如何从PUT HTTP请求(表单数据)获取数据

时间:2016-02-25 13:58:54

标签: php api rest httprequest put

这是我在API中的功能我需要从HTTP请求中获取表单数据中的数据。

我需要获取put值来更新我的类查询中的数据。

    function method()
    {
        $method = $_SERVER['REQUEST_METHOD'];

        return $method;
    }

    function updateUser()
    {
        $method = method();

        if($method == 'PUT'){

            $put_data = file_get_contents("php://input");

            parse_str($put_data, $post_vars);


            return $post_vars;


        }else{

            $status = '400 Bad Request';

            return $status;

        }
     }

{" ------ WebKitFormBoundaryYKcobRh4FtrGCYaI \ r \ nContent处置:_form数据; _name":" \"测试\" \ r \ n \ r \ ntest_value \ r \ n ------ WebKitFormBoundaryYKcobRh4FtrGCYaI - \ r \ n"}

这是我从return $ post_vars

获得的

我需要测试:test_value

2 个答案:

答案 0 :(得分:2)

将请求的编码从multipart / form-data更改为application / x-www-form-urlencoded

答案 1 :(得分:0)

尝试替换

public partial class Provider
{
    //...
    //public virtual Drm Drm { get; set; }
    public virtual ICollection<Drm> Drms { get; set; }
}

public partial class CustomerSite
{
    //...
    //public virtual Drm Drm { get; set; }
    public virtual ICollection<Drm> Drms { get; set; }
}

public partial class DrmType
{
    //public virtual Drm Drm { get; set; }        
    public virtual ICollection<Drm> Drms { get; set; }
}

使用

    $method = method();

        if($method == 'PUT'){
//dosomething
}else{
//error
}

了解更多信息,请参阅: http://php.net/manual/en/features.file-upload.put-method.php