बेसिक प्रमाणीकरण के साथ HTTP अनुरोध भेजना

Rust:
बेसिक प्रमाणीकरण के साथ HTTP अनुरोध भेजना

कैसे करें? (How to:)

Rust में reqwest क्रेट का इस्तेमाल करके बेसिक ऑथेंटिकेशन के साथ HTTP रिक्वेस्ट भेजना सीखते हैं:

// आपके Cargo.toml में निम्न dependency जोड़ें
// [dependencies]
// reqwest = "0.11"
// tokio = { version = "1", features = ["full"] }

#[tokio::main]
async fn main() -> Result<(), reqwest::Error> {
    let client = reqwest::Client::new();
    let user = "user123";
    let pass = "password456";

    let response = client.get("http://example.com")
        .basic_auth(user, Some(pass))
        .send()
        .await?;

    println!("Status: {}", response.status());
    println!("Headers:\n{:?}", response.headers());

    Ok(())
}

जब आप यह कोड चलाते हैं, आपको रिस्पॉन्स मिलेगा जैसे:

Status: 200 OK
Headers:
{
    ...
}

गहराई से जानकारी (Deep Dive)

HTTP बेसिक ऑथेंटिकेशन एक सिंपल लेकिन कमजोर सिक्योरिटी प्रोटोकॉल है। यह बेस64 इन्कोडिंग का इस्तेमाल करता है, जो कि एन्क्रिप्शन नहीं है। इसीलिए इसका इस्तेमाल आमतौर पर HTTPS के साथ किया जाता है।

वैकल्पिक तरीके हो सकते हैं जैसे कि ओआईडीसी (OIDC), ओअथ2 (OAuth2) या मल्टी-फैक्टर ऑथेंटिकेशन, जो अधिक सुरक्षित होते हैं।

बेसिक ऑथेंटिकेशन का इस्तेमाल जब भी आप basic_auth मेथड लगाते हो, हेडर में Authorization जोड़े जाते हैं जिसमें username:password बेस64-इन्कोडेड स्ट्रिंग के रूप में होते हैं।

और भी जानकारी (See Also)