我想编写一个使用如下 URL 调用 REST API 的脚本:
http://localhost:3000/api/v1/user/xyz
如果我在浏览器中打开此 URL,它会要求输入用户电子邮件和密码。一旦我通过了身份验证,它就会返回一个带有用户 ID 的 JSON 响应。我不知道我应该如何通过脚本进行身份验证。有人可以给我一个建议吗?
这是我开始的:
require 'rubygems'
require 'net/http'
require 'json'
api_url = "http://localhost:3000/api/v1//user/xyz"
response = Net::HTTP.get_response(URI.parse(api_url))
data = JSON.parse(response.body)
fields = data.keys
puts fileds
puts data.keys
这是 API 的身份验证:
before_filter :authorize, :except => [:keys]
private
def authorize
authenticate_or_request_with_http_basic do |username, password|
user = User.find_by_email(username)
if user && user.valid_password?(password)
sign_in :user, user
end
end
end
如何传递电子邮件和密码来验证此 API,以便我可以得到“id”作为返回?