Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 颤振上传文件,docx文件到api laravel_Flutter - Fatal编程技术网

Flutter 颤振上传文件,docx文件到api laravel

Flutter 颤振上传文件,docx文件到api laravel,flutter,Flutter,我厌倦的是我使用文件选择器来选择,然后返回如下代码 问题是当我打印出简历时:是空的。或者其他上传文件到api的方式 //函数在这里摆动 String cvs; Future getFile() async{ var tempFile = await FilePicker.getFile(type: FileType.custom, allowedExtensions: ['doc', 'docx']); String fileString = jsonEncode(t

我厌倦的是我使用文件选择器来选择,然后返回如下代码

问题是当我打印出简历时:是空的。或者其他上传文件到api的方式

//函数在这里摆动

    String cvs;
  Future getFile() async{
    var tempFile = await FilePicker.getFile(type: FileType.custom, allowedExtensions: ['doc', 'docx']);
    String fileString = jsonEncode(tempFile);

    setState(() {
      cvs = fileString;
      print(cvs);
    });
  }
//这是我的数据json代码

var data = {
  'firstName': firstNameController.text,
  'lastName': lastNameController.text,
  'gender': genderController.text,
  'experience': experienceController.text,
  'field_id': _mySelection,
  'description_filed': descriptionFiledController.text,
  'cv_type': cvTypeController.text,
  'cv': cvs
};
//后端laravel代码将信息存储在数据库和google drive if文件中 `


您可以按如下方式获取拾取的文件

File File=wait FilePicker.getFile();
获得文件后,您可以使用
http
包使用多部分请求上传它

\u异步文件上传(文件)异步{
//为POST或PATCH方法创建多部分请求
var request=http.MultipartRequest(“POST”,Uri.parse(“”));
//添加其他字段
//请求。字段[“字段1”]=value1;
//使用文件路径、字符串或字节创建多部分
var fileToUpload=wait http.MultipartFile.fromPath(“file\u字段”,file.path);
//向请求添加多部分
request.files.add(fileToUpload);
var response=wait request.send();
//从服务器获取响应
var responseData=wait response.stream.toBytes();
var responseString=String.fromCharCodes(responseData);
打印(响应预算);
}

一旦获得了PHP中的多部分文件,您就可以轻松地读取它。

您可以按如下方式获得所选文件

File File=wait FilePicker.getFile();
获得文件后,您可以使用
http
包使用多部分请求上传它

\u异步文件上传(文件)异步{
//为POST或PATCH方法创建多部分请求
var request=http.MultipartRequest(“POST”,Uri.parse(“”));
//添加其他字段
//请求。字段[“字段1”]=value1;
//使用文件路径、字符串或字节创建多部分
var fileToUpload=wait http.MultipartFile.fromPath(“file\u字段”,file.path);
//向请求添加多部分
request.files.add(fileToUpload);
var response=wait request.send();
//从服务器获取响应
var responseData=wait response.stream.toBytes();
var responseString=String.fromCharCodes(responseData);
打印(响应预算);
}
一旦获得了PHP中的多部分文件,就可以轻松地读取它

public function storeApi(Request $req){



        $post = new Post;
        //To associate a user with a post,
        $field = Field::all();
        $cvs = new Cv;


        $validator = Validator::make($req->all(), [
             'firstName' => 'required|max:255',
             'lastName' => 'required|max:255',
             'gender' => 'required|max:255',
             'experience' => 'required|max:255',
             'cv' => 'required|max:100000|mimes:doc,docx',

        ]);
        if($validator->fails()){
      
        return redirect('/user/create_cv')
        ->withErrors($validator)
        ->withInput();
    }
    else{
        $post->user()->associate(Auth::user());
        $post->firstName=$req->firstName;
        $post->lastName=$req->lastName;
        $post->gender=$req->gender;

        $post->field_id=$req->field_id;
       
        $post->experience=$req->experience;
        
        $post->description_filed=$req->description_filed;
        $post->cv_type=$req->cv_type;

        if($req->hasFile('cv')){


                $cvs->user()->associate(Auth::user());
                
                $cvs->cv = $req->file('cv')->store('google_folder_link', 'google');

                
                $cvs->url =  Storage::disk('google')->url($cvs->cv);
                $cvs->save();


        }


        $post->save();
    }
    return response()->json([
        'success' => "true",
        'message' => 'Post successfully',
        'post'    => $post,
        'cv'    => $cvs
        ]); 

    }`