HTTP-Anfragen mit Basisauthentifizierung senden

Ruby:
HTTP-Anfragen mit Basisauthentifizierung senden

How to:

require 'net/http'
require 'uri'

uri = URI('http://example.com/secrets')
username = 'foo'
password = 'bar'

request = Net::HTTP::Get.new(uri)
request.basic_auth(username, password)

response = Net::HTTP.start(uri.hostname, uri.port) { |http| http.request(request) }

puts response.body

Beispiel-Ausgabe:

Geheime Informationen

Deep Dive

Basic Authentication ist ein Veteran unter den Authentifizierungsmethoden und Teil des HTTP/1.0-Standards (RFC 1945). Heutzutage gibt es sicherere Alternativen wie OAuth, die in modernen Anwendungen bevorzugt werden. Die Implementierung ist simpel: Der Authorization-Header wird mit Basic und einem Base64-kodierten String von Benutzername und Passwort ergänzt. Trotz seiner Einfachheit solltest du Basic Auth über HTTPS verwenden, um die Credentials zu schützen.

See Also