gpt4 book ai didi

ruby-on-rails - 尝试使用 HTTParty 或 Net :HTTP (or etc) 连接到 "digest authentication"网络服务

转载 作者:行者123 更新时间:2023-12-02 02:35:24 25 4
gpt4 key购买 nike

我一直在尝试连接到使用摘要式身份验证的 Web 服务。

我可以使用 user:password@service.site.com/endpoint 在 Safari 中连接

我曾尝试在 Ruby 和 Rails 中使用 HTTParty 和 Net:HTTP 使用“基本”身份验证”选项进行连接,但没有成功。

想知道 HTTParty/Net:HTTP“basic_auth”选项是否与“digest auth”服务不兼容?

如果没有,还有其他连接方式吗?

最佳答案

HTTPParty 基本身份验证显然与 digest_auth 不兼容。我找到了这个 Net:HTTP 扩展名:https://codesnippets.joyent.com/posts/show/1075并且正在编写一个方法来处理这个问题,借助 Crack gem http://github.com/jnunemaker/crack :

 def self.decode vin
url = URI.parse(APP_CONFIG[:vinlink_url])
Net::HTTP.start(url.host) do |http|
res = http.head(url.request_uri)
req = Net::HTTP::Get.new("/report?type=basic&vin=#{vin}")
req.digest_auth(APP_CONFIG[:vinlink_login], APP_CONFIG[:vinlink_password], res)
@response = http.request(req)
end
if @response.code == "200"
hash = Crack::XML.parse(@response.body).recursive_downcase_keys!.recursive_symbolize_keys!
end
end

关于ruby-on-rails - 尝试使用 HTTParty 或 Net :HTTP (or etc) 连接到 "digest authentication"网络服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2032166/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com