Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

171
Visualizações
¿Cómo ordenar JSON en óxido?

¿Es posible ordenar JSON en lenguaje oxidado? Si es posible, ¿cómo?

Como éste:

 const headers = { 'checkout-account': '1234', 'checkout-algorithm': 'sha256', 'checkout-method': 'POST', 'checkout-nonce': '564635208570151', 'checkout-timestamp': '2018-07-06T10:01:31.904Z', }; const calculateHmac = (body=false, params) => { const hmacPayload = Object.keys(params) .sort() .map((key) => [key, params[key]].join(':')) .concat(body ? JSON.stringify(body) : '') .join('\n'); }; calculateHmac(false, headers);
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Más o menos el mismo código en Rust:

 use itertools::Itertools; use std::collections::HashMap; fn main() { let headers = HashMap::from([ ("checkout-account", "1234"), ("checkout-algorithm", "sha256"), ("checkout-method", "POST"), ("checkout-nonce", "564635208570151"), ("checkout-timestamp", "2018-07-06T10,01,31.904Z"), ]); let hmac_payload = headers .keys() .sorted() .map(|key| format!("{}:{}", key, headers[key])) .join("\n"); println!("{hmac_payload}"); }

Enlace al parque

Como señaló @cdhowie, Rust le brinda la opción de ordenar los elementos por clave en lugar de ordenar solo las claves y luego realizar una búsqueda cada vez:

 let hmac_payload = headers .iter() .sorted_by_key(|item| item.0) .map(|item| format!("{}:{}", item.0, item.1)) .join("\n");

Como señaló @Caesar, usar BTreeMap en lugar de HashMap sería una solución más eficiente, ya que almacena elementos ordenados por sus claves, por lo que no necesitará ordenar elementos en absoluto.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda