Å sende en HTTP-forespørsel

Rust:
Å sende en HTTP-forespørsel

Slik gjør du:

Rust har ikke innebygget støtte for å sende HTTP-forespørsler, men reqwest-biblioteket gjør jobben enkel. Først, inkluder det i Cargo.toml:

[dependencies]
reqwest = "0.11"

Nå kan du sende en GET-forespørsel og håndtere responsen slik:

use reqwest;
use std::error::Error;

#[tokio::main]
async fn main() -> Result<(), Box<dyn Error>> {
    let response = reqwest::get("https://www.example.com").await?;
    
    println!("Status for vår henvendelse: {}", response.status());
    println!("Innholdet: {}", response.text().await?);

    Ok(())
}

Dette vil gi deg statuskoden og innholdet fra example.com.

Dypdykk

Før i tiden, brukte vi biblioteket hyper for lavnivå HTTP-operasjoner i Rust. reqwest bygger videre på hyper, men gir en høyere-nivå API som er lettere å bruke. Alternativer inkluderer ureq eller surf, avhengig av behovet for asynkronitet og andre funksjoner.

reqwest støtter asynkrone operasjoner med tokio-runtime. Dette er viktig for å skrive moderne, effektive applikasjoner som kan utføre flere oppgaver parallelt.

Når du sender en HTTP-forespørsel, bygger klienten en komplett HTTP-versjon av meldingen, inkludert headers og payload, og utfører et nettverkskall for å sende den til serveren. Responsen blir deretter behandlet av klienten.

Se også: