代码之家  ›  专栏  ›  技术社区  ›  Milan Velebit

laravel无法从http post请求访问formdata?

  •  0
  • Milan Velebit  · 技术社区  · 7 年前

    当我将内容类型设置为 多部分/表单数据 ,但当我将内容类型设置为 应用程序/x-www-form-urlencoded 一切如期而至。价值观似乎是空的。

    我通过邮递员发出的请求: A Postman request I sent

    Laravel API代码段:

    use Illuminate\Http\Request;
    
          ...
    
    public function foo(Request $req){
        echo $req->get('some_key');
    }
    

    我试过通过 $req->get('密钥名称') 我是说, $req->键名称 但没用。打电话给 $REQ->全部() 方法为我提供了具有正确内容的数组,但我也无法从中提取值,是否有更简单的方法来实现此目的?提前谢谢。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Brian Lee    7 年前

    使用时 multipart/form-data ,将操作设置为 PUT PATCH 一定要使用 FormData 对象客户端:

    let Data = new FormData();
    
    // using vuejs as an example of appending files.
    Data.append( 'your_file', this.$refs.input.files[0], this.$refs.input.files[0].name ); 
    Data.append('_method', 'PATCH');
    
    axios.post('/api/foo', Data ).then( Response => { 
       // handle success
    });