Map body = Map(); body['name'] = _name.trim(); body['phone'] = _phone.trim(); body['email'] = _email.trim(); base64Encode(_image.readAsBytesSync()).toString(); final response = await http.post("https://servername/pagename", body: body); if (response.statusCode < 200 || response.statusCode > 400) { throw new Exception("Error data"); } else { print('Uploaded'); return response.body; }
방법2. Multipart를 이용해서 화일을 업로드 할 경우 아래와 같은 코드로 작성하면 된다.
var request = new http.MultipartRequest("POST", Uri.parse("https://servername/pagename")); request.fields['name'] = _name.trim(); request.fields['phone'] = _phone.trim(); request.fields['email'] = _email.trim(); var stream = new http.ByteStream(DelegatingStream.typed(_image.openRead())); var length = await _image.length(); var multipartFile = new http.MultipartFile("photo", stream, length, filename: basename(_image.path)); request.files.add(multipartFile); var response = await request.send(); var respStr = await response.stream.bytesToString(); if (response.statusCode < 200 || response.statusCode > 400) { throw new Exception("Error data"); } else { print('Uploaded'); return respStr; }
새댓글 등록