Как выполнить базовую аутентификацию с помощью RestClient?
Кто-нибудь знает, как выполнить базовую аутентификацию с помощью RestClient?
Мне нужно создать приватный репозиторий на GitHub через их API RESTful.
Ответы
Ответ 1
Из источника похоже, что вы можете просто указать пользователя и пароль как часть вашего объекта запроса.
Вы пробовали что-то вроде:
r = Request.new({:user => "username", :password => "password"})
Также, если вы посмотрите вниз в разделе Shell ReadMe, у него есть пример указания его как части restshell
.
$ restclient https://example.com user pass
>> delete '/private/resource'
Ответ 2
Самый простой способ - вставить данные в URL-адрес:
RestClient.get "http://username:[email protected]"
Ответ 3
Вот пример рабочего кода, где я поддерживаю факультативный basicauth, но не требую, чтобы пользователь и пароль были встроены в URL-адрес:
def get_collection(path)
response = RestClient::Request.new(
:method => :get,
:url => "#{@my_url}/#{path}",
:user => @my_user,
:password => @my_pass,
:headers => { :accept => :json, :content_type => :json }
).execute
results = JSON.parse(response.to_str)
end
Обратите внимание, что если @my_user
и @mypass
не создаются, он отлично работает без basicauth.