当前位置: 首页 > 软件库 > 程序开发 > 网络工具包 >

Faraday

Ruby的HTTP 客户端
授权协议 MIT
开发语言 Ruby
所属分类 程序开发、 网络工具包
软件类型 开源软件
地区 不详
投 递 者 梁鸣
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Faraday 是一个Ruby 的HTTP 客户端开发库,提供了一个通用的接口,支持如下适配器:

示例代码:

conn = Faraday.new(:url => 'http://sushi.com') do |faraday|
  faraday.request  :url_encoded             # form-encode POST params
  faraday.response :logger                  # log requests to STDOUT
  faraday.adapter  Faraday.default_adapter  # make requests with Net::HTTP
end

# set proxy with string
conn.options.proxy = "http://user:password@example.org/"

# set proxy with hash
conn.options.proxy = { :uri => 'http://user:passwordexample.org' }

# specify proxy user/pass
conn.options.proxy = { :uri => 'http://user:pass.org',
  :user => 'user',
  :password => 'pass' }

## GET ##

response = conn.get '/nigiri/sake.json'     # GET http://sushi.com/nigiri/sake.json
response.body

conn.get '/nigiri', { :name => 'Maguro' }   # GET /nigiri?name=Maguro

conn.get do |req|                           # GET http://sushi.com/search?page=2&limit=100
  req.url '/search', :page => 2
  req.params['limit'] = 100
end

## POST ##

conn.post '/nigiri', { :name => 'Maguro' }  # POST "name=maguro" to http://sushi.com/nigiri

# post payload as JSON instead of "www-form-urlencoded" encoding:
conn.post do |req|
  req.url '/nigiri'
  req.headers['Content-Type'] = 'application/json'
  req.body = '{ "name": "Unagi" }'
end

## Per-request options ##

conn.get do |req|
  req.url '/search'
  req.options.timeout = 5           # open/read timeout in seconds
  req.options.open_timeout = 2      # connection open timeout in seconds

  # set proxy with string
  req.options.proxy = "http://user:password@example.org/"

  # set proxy with hash
  req.options.proxy = { :uri => 'http://user:passwordexample.org' }

  # specify proxy user/pass
  req.options.proxy = { :uri => 'http://user:pass.org',
    :user => 'user',
    :password => 'pass' }
end
  • 渗透测试集成环境Faraday Kali Linux集成了海量的渗透测试工具。但是这些工具在使用的时候,还是分离的。虽然用户可以通过Shell、日志/报告导入导出功能等方式,进行整合,但是仍然不便于分析。 Faraday提出了IPE(Integrated Penetration Environment,渗透测试集成环境)的概念。它是一款类似编程IDE的工具,他将大量的工具整合在一起。用户只需要在内

  • 微博广告分层实验平台(Faraday)架构实践 - 推酷

  • 摘要: Using one-dimensional models, we show that a helical magnetic field with an appropriate sign of helicity can compensate the Faraday depolarization resulting from the superposition of Faraday-rotat

  • 因为项目需要在后台实现自动将内容同时分享到微博,QQ空间,豆瓣等各个社交网络,一开始准备找个现成的gem,发现了hooopo写的: [url]https://github.com/hooopo/oauth_china[/url] 但是这个项目微博用的是OAuth 1,新浪很快就不支持了,原准备fork一下修改,但觉得依赖太多,而且我们的项目本身用了Omniauth做登录,用户的token等信息都已

  • 渗透测试集成环境Faraday   Kali Linux集成了海量的渗透测试工具。但是这些工具在使用的时候,还是分离的。虽然用户可以通过Shell、日志/报告导入导出功能等方式,进行整合,但是仍然不便于分析。   Faraday提出了IPE(Integrated Penetration Environment,渗透测试集成环境)的概念。它是一款类似编程IDE的工具,他将大量的工具整合在一起。用户只

 相关资料
  • 问题 你想创建一个 HTTP 客户端。 解决方案 在这个方法中,我们将使用 node.js's HTTP 库。我们将从一个简单的客户端 GET 请求示例返回计算机的外部 IP 。 关于 GET http = require 'http' http.get { host: 'www.google.com' }, (res) -> console.log res.statusCode get

  • HTTP客户端用于抓取网页HTML源码。 用法 自定义HTTP Header 获取抓取到的HTML 捕获HTTP异常 获取HTTP响应头等信息 自定义HTTP客户端 QueuryList推荐使用GuzzleHttp来作为HTTP客户端,它功能强大、使用简单、支持异步和并发请求,GuzzleHttp使用文档:http://guzzle-cn.readthedocs.io/zh_CN/latest/

  • http 客户端 http 客户端 源码/* * File : httpclient.c * * Copyright (c) 2006-2018, RT-Thread Development Team * * SPDX-License-Identifier: Apache-2.0 * * Change Logs: * Date Author Notes * 2018-07-20 flybreak

  • 这可能是基于意见的问题。 我想使用古斯HTTP客户端,因为许多人认为它比Symfony HTTP客户端更好,Cloudflare在其PHP API中也使用古斯HTTP客户端。但是,我使用Symfony HTTP客户端和古斯HTTP客户端执行了一个简单的测试。结果表明,古斯HTTP客户端比Symfony HTTP客户端慢得多。 我想知道/理解为什么拥有如此著名的声誉的HTTP客户端缺乏速度。还是我做

  • Infura Http 客户端 web3j Infura 模块提供了一个Infura Http 客户端(InfuraHttpService),它为Infura特定的Infura-Ethereum-Preferred-Client提供支持。这允许你指定是否希望geth或Parity客户端响应你的请求。你可以像普通的HTTPClient一样创建客户端: Web3j web3 = Web3j.build

  • 从Java使用弹性搜索的最佳实践是什么?例如,可以使用REST API轻松找到留档和逐个查询删除功能的示例。传输客户端Java情况并非如此。 在哪里可以找到Java Transport Client的使用示例 Java Transport Client是否通过REST API覆盖了整个ElasticSearch功能,比如HTTP客户端

  • 我有点困惑如何创建超文本传输协议-kit WebSocket客户端。在网站上有一个如何创建WebSocket服务器的例子,创建客户端可能是微不足道的,但我似乎不能得到它的权利。有没有不关注Javascript客户端的例子? P. S.在这个问题中进行了一些讨论,但仅举了一些例子,并指示超文本传输协议-kit现在支持WebSocket客户端。

  • 在构建Retor Netty应用程序时,我得到了两个相似的指标。但是它们之间到底有什么区别呢? vs. 我不知道他们在测量响应时间的方式/位置上有什么不同。哪种方法测量的时间更长并不一致。 Http客户端指标测量时间更长 ReactorNetty指标延长了时间