pub fn generate_token() -> String {
    let token_u64 = generate_u64();
    let mut wtr = vec![];
    wtr.write_u64::<BigEndian>(token_u64).unwrap();
    hex::encode(&crypto::sha256_hash_raw(wtr.as_slice()))
}
/// Sama dengan `generate_access_token` bedanya ini general purpose
/// dengan menggunakan sha256 dengan ukuran token yang lebih pendek.
Sama dengan `generate_access_token` bedanya ini general purpose
dengan menggunakan sha256 dengan ukuran token yang lebih pendek.
Sama dengan ` generate_access_token ` bedanya ini general purpose dengan menggunakan sha256 dengan ukuran token yang lebih pendek .
pub fn generate_token() -> String {
    let token_u64 = generate_u64();
    let mut wtr = vec![];
    wtr.write_u64::<BigEndian>(token_u64).unwrap();
    hex::encode(&crypto::sha256_hash_raw(wtr.as_slice()))
}
pub fn generate_token ( ) -> String { let token_u64 = generate_u64 ( ) ; let mut wtr = vec ! [ ] ; wtr . write_u64 :: < BigEndian > ( token_u64 ) . unwrap ( ) ; hex :: encode ( & crypto :: sha256_hash_raw ( wtr . as_slice ( ) ) ) }
Sama dengan `generate_access_token` bedanya ini general purpose
dengan menggunakan sha256 dengan ukuran token yang lebih pendek.
Sama dengan ` generate_access_token ` bedanya ini general purpose dengan menggunakan sha256 dengan ukuran token yang lebih pendek .