在 UbiSunrsie 裡面介紹過的小小 Script 裡面有用到,就直接用範例來解釋一下使用方式。
GET
require 'net/http'
Net::HTTP.version_1_2
Net::HTTP.start('www.google.com.tw', 80) {|http|
response = http.get('/index.html')
puts response.body
}
基本上,Start一個 Net::HTTP Connection HOST,然後使用 http.get來抓取你要的頁面,最後用 response.body 印出來即可。
POST
require 'net/http'
Net::HTTP.version_1_2
url ='example.com'
action = '/cgi-bin/query'
Net::HTTP.start( url , 80 ) {|http|
response = http.post( action , 'var1=value1&var2=value2' )
response.body.each do |line|
puts line
end
}
稍微複雜一點的作法,除了 http.get 變成 http.post 之外,後面的 variable = value 的形式是採用 application/x-www-form-urlencoded 的形式傳遞出去的,大家應該都很熟悉。
如果不喜歡這樣,還有其他作法
require 'net/http'
require 'uri'
res = Net::HTTP.post_form(URI.parse('http://example.com'), {'var'=> 'value' , 'var2' => 'value2' })
res.body.each do |line|
puts line
end
end
好處是 value 傳遞是用 hash 方式來傳遞,比較 Ruby 化,壞處是比起
Net
::HTTP.post_form ,我比較喜歡 http.post 這樣的形式。
分享到:
相关推荐
在本文中,我们将深入探讨如何使用 HttpRunner v4.0 进行性能测试。HttpRunner 是一个强大的自动化测试框架,它允许用户在不修改现有接口测试用例的情况下,直接运行性能测试。对于初学者来说,这是一个非常友好的...
总的来说,NET::FTPSSL模块为Perl程序员提供了一种安全、便捷的方式,来处理需要加密传输的FTP任务。通过正确安装和使用这个模块,你可以确保你的文件传输过程是安全可靠的,避免了数据在传输过程中可能遭遇的风险。
具体使用方法是将QImagePngHelper类集成到你的项目中,然后用它来替代默认的QImage读取方式。 总的来说,解决“libpng warning: iCCP: known incorrect sRGB profile”问题需要理解PNG图像的色彩管理以及Qt如何处理...
本篇文章将深入探讨SFTP的工作原理、实现方式以及相关的源码分析。 ### SFTP工作原理 SFTP不是一个独立的协议,而是运行在SSH框架内的一个子系统。当用户通过SSH连接到远程服务器时,可以启动SFTP会话,提供文件...
在C++标准库中,`std::list`是一种双链表容器,它提供了一种高效的方式来存储和操作序列数据。由于`std::list`不是随机访问容器,因此它不支持像数组那样的通过索引直接访问元素(如`[]`运算符)。但是,`std::list`...
总的来说,Net::Vypress::Chat是Perl开发者构建聊天应用的一个实用工具,它提供了一种标准化的方式来实现Vypress Chat协议,使得在Perl环境中开发聊天应用变得更加便捷。通过学习和使用这个模块,开发者不仅可以提升...
std::string、char*、const char*是C++中三个不同的字符串表示方式,它们都可以转换为托管的byte数组或字符串String,但是在C++/CLI中,它们的转换方法略有不同。 一、std::string转托管byte数组或字符串 std::...
DNS欺骗防御:使用反欺骗插件与工具.docx DNS欺骗防御:使用反欺骗插件与工具all.docx DNS欺骗防御:使用反欺骗插件与工具_(10)....DNS欺骗防御:使用反欺骗插件与工具_(3).DNS欺骗的常见攻击方式.doc
BeeScan网络空间测绘工具的使用方式以及源码分析 BeeScan是一款基于GO语言的网络空间资产探测工具,具有分布式节点扫描功能,从而大大增加了资产探测的效率。下面是BeeScan网络空间测绘工具的使用方式以及源码分析...
1.内容概要: 按键检测代码,实现短按,长按...适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 详情见博客: http://t.csdn.cn/DP43e
使用文本方式安装RHEL6 输入linux 回车 图形方式安装 在启动界面,按ESC健 欢迎界面 测试光盘介质:跳过 使用方向键 选择语言:English 选择键盘类型:us 对硬盘初始化 选择时区 选中之后按F12键 输入管理员密码 Tab...
- **下载地址**:http://sourceforge.net/projects/net-snmp/ - **当前最新版本**:5.6 - **x86 exe 版本**:如果仅需要安装而无需编译,可以选择下载预编译的 x86 exe 版本,如 net-snmp-5.5.0-1.x86.exe。 #### ...
1.3.1 使用方式一:局部引用 1.3.2 使用方式二:单个文件中全局引用 1.3.3 使用方式三:整个项目中全局引用 1.4 效果图 二、在WPF中使用IconFont图标字体 2.1 下载IconFont字体文件 2.2 在WPF中配置引用 2.2.1 引用...
Qt加载Osg的老方式是使用osg3.4以及以前的某些版本中提供的osgQt项目加载osg,不过这种方式,在3.6等新版本中不再支持,更改起来比较麻烦,由于osg::GraphicsContext类不再提供osg::GraphicsContext::...
- **供电方式**:可通过USB或外部电池组供电。 #### 三、开发环境 Micro:bit支持多种编程环境,主要包括: - **MakeCode Editor**:在线编程环境,适合初学者。 - **Python编辑器**:支持Python语言编程。 - **...
- `CSerialException::GetErrorMessage`: 获取错误信息,支持自定义错误信息的获取方式。 ### 使用场景 CSerialPort类在工业自动化、设备控制、数据采集等领域有着广泛的应用。通过灵活运用其提供的各种功能,...
具体实现方式如下: ```c #include // 创建套接字 int sockfd = socket(AF_INET, SOCK_STREAM, 0); // 设置SO_REUSEADDR选项 int optval = 1; setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR, &optval, sizeof...
采用虚拟机的方式,先配置好Hadoop的主节点,然后通过克隆的方式创建Slave节点,实现3节点的HDFS集群 任务二: 实验一:使用任务一搭建的集群,编程实现合并文件MergeFile的功能: 将数据集trec06p\_sample中的...
最新版的QXDM工具,可以抓取高通平台log信息。亲测可用(使用环境win10...高通手机连接QXDM5使用方式: 1.通过adb输入命令打开diag口 adb sehll su setprop sys.usb.config diag,adb 2.注意手机需要有root权限才可开启。
在本场景中,我们将介绍如何使用RMI(Remote Method Invocation)连接方式来实现JMX框架的各层级的连接。 MBean是JMX框架的基本组件,用于提供管理信息和功能。MBean可以是任何Java对象,只要它实现了相关的接口。...