Découpage
This commit is contained in:
13
src/main.rs
13
src/main.rs
@@ -3,7 +3,7 @@ use curl::easy::Easy;
|
|||||||
use sha2::{Sha256, Digest};
|
use sha2::{Sha256, Digest};
|
||||||
use std::fs::File;
|
use std::fs::File;
|
||||||
|
|
||||||
fn main() {
|
fn download_image() -> Vec<u8> {
|
||||||
// Buffer pour recevoir l'image
|
// Buffer pour recevoir l'image
|
||||||
let mut buf = Vec::new();
|
let mut buf = Vec::new();
|
||||||
|
|
||||||
@@ -14,17 +14,22 @@ fn main() {
|
|||||||
// URL à manipuler
|
// URL à manipuler
|
||||||
handle.url("https://thispersondoesnotexist.com/").unwrap();
|
handle.url("https://thispersondoesnotexist.com/").unwrap();
|
||||||
{
|
{
|
||||||
// Callback pour traiter les données reçues
|
|
||||||
let mut transfer = handle.transfer();
|
let mut transfer = handle.transfer();
|
||||||
|
// Callback pour traiter les données reçues
|
||||||
transfer.write_function(|new_data| {
|
transfer.write_function(|new_data| {
|
||||||
buf.extend_from_slice(new_data);
|
buf.extend_from_slice(&new_data);
|
||||||
Ok(new_data.len())
|
Ok(new_data.len())
|
||||||
}).unwrap();
|
}).unwrap();
|
||||||
|
|
||||||
// Effectue l'appel
|
// Effectue l'appel
|
||||||
transfer.perform().unwrap();
|
transfer.perform().unwrap();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
buf
|
||||||
|
}
|
||||||
|
|
||||||
|
fn main() {
|
||||||
|
let buf = download_image();
|
||||||
|
|
||||||
// Sauve le buffer dans un fichier dont le nom est le hash du buffer
|
// Sauve le buffer dans un fichier dont le nom est le hash du buffer
|
||||||
let hasher = Sha256::new_with_prefix(buf.as_slice());
|
let hasher = Sha256::new_with_prefix(buf.as_slice());
|
||||||
let hash_bytes = hasher.finalize();
|
let hash_bytes = hasher.finalize();
|
||||||
|
|||||||
Reference in New Issue
Block a user