mirror of
https://gitlab.com/comunic/comunicapiv3
synced 2024-11-29 16:56:28 +00:00
Can check if a file is present in the request
This commit is contained in:
parent
ca82924b85
commit
a02dc8b7fa
@ -233,5 +233,10 @@ pub fn refresh_single(r: &mut HttpRequestHandler) -> RequestResult {
|
|||||||
|
|
||||||
/// Send a new message
|
/// Send a new message
|
||||||
pub fn send_message(r: &mut HttpRequestHandler) -> RequestResult {
|
pub fn send_message(r: &mut HttpRequestHandler) -> RequestResult {
|
||||||
|
|
||||||
|
if r.has_file("image") {
|
||||||
|
println!("File is detected.");
|
||||||
|
}
|
||||||
|
|
||||||
r.success("implement me")
|
r.success("implement me")
|
||||||
}
|
}
|
@ -150,12 +150,12 @@ impl FromRequest for CustomRequest {
|
|||||||
let mut field = el?;
|
let mut field = el?;
|
||||||
|
|
||||||
let content_type = field.content_disposition().ok_or(
|
let content_type = field.content_disposition().ok_or(
|
||||||
ErrorInternalServerError("F1"))?;
|
ErrorInternalServerError("Missing content type"))?;
|
||||||
let name = content_type.get_name().ok_or(
|
let name = content_type.get_name().ok_or(
|
||||||
ErrorInternalServerError("Missing field name!"))?;
|
ErrorInternalServerError("Missing field name!"))?;
|
||||||
|
|
||||||
// Handle file upload
|
// Handle file upload
|
||||||
if content_type.get_filename().is_some() && name.eq("file") {
|
if content_type.get_filename().is_some() {
|
||||||
let filename = content_type.get_filename().unwrap();
|
let filename = content_type.get_filename().unwrap();
|
||||||
let mut buf = BytesMut::new();
|
let mut buf = BytesMut::new();
|
||||||
|
|
||||||
|
@ -160,7 +160,6 @@ impl HttpRequestHandler {
|
|||||||
pub fn has_post_parameter(&self, name: &str) -> bool {
|
pub fn has_post_parameter(&self, name: &str) -> bool {
|
||||||
self.body.contains_key(name)
|
self.body.contains_key(name)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Get a post parameter
|
/// Get a post parameter
|
||||||
pub fn post_parameter(&mut self, name: &str) -> ResultBoxError<&RequestValue> {
|
pub fn post_parameter(&mut self, name: &str) -> ResultBoxError<&RequestValue> {
|
||||||
if !self.has_post_parameter(name) {
|
if !self.has_post_parameter(name) {
|
||||||
@ -252,6 +251,12 @@ impl HttpRequestHandler {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Check out whether a file was included in the request or not
|
||||||
|
pub fn has_file(&self, name: &str) -> bool {
|
||||||
|
if let Some(RequestValue::File(_, _)) = self.body.get(name) { true } else { false }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/// Get an integer included in the POST request
|
/// Get an integer included in the POST request
|
||||||
pub fn post_i64(&mut self, name: &str) -> ResultBoxError<i64> {
|
pub fn post_i64(&mut self, name: &str) -> ResultBoxError<i64> {
|
||||||
Ok(self.post_string(name)?.parse::<i64>()?)
|
Ok(self.post_string(name)?.parse::<i64>()?)
|
||||||
|
Loading…
Reference in New Issue
Block a user