Ruby:
HTTP-pyynnön lähettäminen perusautentikoinnilla
How to: - Kuinka tehdä:
require 'net/http'
require 'uri'
uri = URI('http://example.com/secrets')
req = Net::HTTP::Get.new(uri)
req.basic_auth 'user', 'password'
res = Net::HTTP.start(uri.hostname, uri.port) {|http|
http.request(req)
}
puts res.body
Kun ajat tämän koodin, saat vastaukseksi HTTP-palvelimen vastauksen, joka sisältää pyydetyt tiedot tai virheilmoituksen.
Deep Dive - Syväsukellus:
Perusautentikaatio on HTTP-protokollan vanhin autentikaatiomuoto, joka esiteltiin jo HTTP/1.0:ssa. Vaikka turvallisempiakin tapoja on olemassa, kuten OAuth ja API-avaimet, perusautentikaatio on edelleen suosittu sen yksinkertaisuuden takia. Se muodostuu käyttäjänimestä ja salasanasta, jotka lähetetään Base64-koodattuna otsikoissa.
Rubyssa HTTP-pyyntöjä ohjataan usein Net::HTTP
-kirjaston avulla, joka on osa Ruby Standard Libraryä. Vaihtoehtoisesti voi käyttää kolmannen osapuolen kirjastoja, kuten HTTParty
tai RestClient
, jotka voivat tarjota lisäominaisuuksia ja syntaksia helpottamaan HTTP-pyyntöjen tekemistä.
See Also - Katso Myös:
- Ruby Standard Library: Net::HTTP dokumentaatio: https://ruby-doc.org/stdlib-3.1.0/libdoc/net/http/rdoc/Net/HTTP.html
- RestClient gem: https://github.com/rest-client/rest-client
- HTTParty gem: https://github.com/jnunemaker/httparty
- RFC 7617, ‘The ‘Basic’ HTTP Authentication Scheme’: https://tools.ietf.org/html/rfc7617