文档章节

获取远程数据类库:Http Requests for PHP

lixiaokai2008
 lixiaokai2008
发布于 2014/09/28 16:20
字数 711
阅读 2198
收藏 10

最新搜索的一些类库:

一、Requests for PHP推荐

官网:http://requests.ryanmccue.info
截止2014-09-28日为止,最新版:v1.6.0 for php 5.2.x
官方介绍:
Requests is a humble HTTP request library. It simplifies how you interact with other sites and takes away all your worries.
翻译:Requests是一个谦虚的HTTP请求类库,它简化你与其他网站的交互并把你的一些烦恼带走。(汗~~)
如何使用:
1、下载:https://github.com/rmccue/Requests/archive/v1.6.0.zip - 2014-09-29 - 【查看最新】
2、解压缩,得到如下文件

把library目录重名称为requests,然后拷贝到程序的类库文件夹

3、引用类库文件

require_once ('requests/Requests.php');

4、让程序自动引用相关内部类库(一定要执行这行代码)

Requests::register_autoloader();

5、开始使用GET或POST请求获取远程数据

$response = Requests::get('https://github.com/timeline.json');
var_dump($response);

常用方法说明:
1、使用GET发送请求获取远程数据 Requests::get($url, $headers = array(), $options = array());
这里有3个参数可以使用
第1个参数:$url 为需要获取远程数据的url链接,例如:

$response = Requests::get('https://github.com/timeline.json');

第2个参数:$headers = array() 为附加的头部请求

array('Accept' => 'application/json')

第3个参数:$options = array() 为配置参数

`timeout`: 设置响应超时时间
(integer, seconds, default: 10)
`useragent`: 设置发送到服务器的用户代理
(string, default: php-requests/$version)
`follow_redirects`: 是否允许3XX重定向
(boolean, default: true)
`redirects`: How many times should we redirect before erroring?
(integer, default: 10)
`blocking`: Should we block processing on this request?
(boolean, default: true)
`filename`: File to stream the body to instead.
(string|boolean, default: false)
`auth`: Authentication handler or array of user/password details to use for Basic authentication
(Requests_Auth|array|boolean, default: false)
`proxy`: Proxy details to use for proxy by-passing and authentication
(Requests_Proxy|array|boolean, default: false)
`idn`: Enable IDN parsing
(boolean, default: true)
`transport`: Custom transport. Either a class name, or a transport object. Defaults to the first working transport from
{@see getTransport()}
(string|Requests_Transport, default: {@see getTransport()})
`hooks`: Hooks handler.
(Requests_Hooker, default: new Requests_Hooks())
`verify`: Should we verify SSL certificates? Allows passing in a custom
certificate file as a string. (Using true uses the system-wide root
certificate store instead, but this may have different behaviour
across transports.)
(string|boolean, default: library/Requests/Transport/cacert.pem)
`verifyname`: Should we verify the common name in the SSL certificate?
(boolean: default, true)

2、使用POST发送请求获取远程数据 Requests::post($url, $headers = array(), $data = array(), $options = array());
这里有4个参数可以使用,多了一个请求数据(相当于表单提交的数据),其实get也有这个数据,get请求直接附加在url上了

第1个参数:$url 同get的第一个参数
第2个参数:$headers = array() 同get的第2个参数
第4个参数:$options = array() 同get的第3个参数
第3个参数:$data = array() 为表单提交的数据







其他相关:
1、封装好的CURL和Fsockopen函数
http://blog.csdn.net/pctit/article/details/4750535
2、搜索搜出来的,2003年的类库,可以参考
http://scripts.incutio.com/httpclient/index.php

© 著作权归作者所有

lixiaokai2008
粉丝 14
博文 100
码字总数 20933
作品 0
中山
私信 提问
Python网络爬虫基础及Requests库入门

Robots协议 网络爬虫的问题 在讲python网络爬虫之前,先来看看网络爬虫的一些问题以及robots协议。首先python爬虫功能主要使用的库有Requests库和Scrapy库。他们的区别如下: 正常情况下Web...

zengxiantao1994
2017/10/13
0
0
《CURL技术知识教程》系列分享专栏

《CURL技术知识教程》已整理成PDF文档,点击可直接下载至本地查阅 https://www.webfalse.com/read/201737.html 文章 PHP采集相关教程之一 CURL函数库 php中通过curl模拟登陆discuz论坛的实现...

开元中国2015
2018/11/06
0
0
PHP阿里云OSS,七牛云 上传文件

来源:http://my.oschina.net/rain21/blog/477019 七牛云 PHPSDK下载:http://pan.baidu.com/s/1o69TGcM 7.X版本: DEMO: <?phprequire_once './vendor/autoload.php'; use QiniuAuth;use Qini......

wsy5344
2015/07/10
0
1
15个PHP库,你值得拥有!(上)

最几年,PHP已经成为最受欢迎的一种有效服务器端编程语言。据2013年发布的一份调查报告显示,PHP语言已经被安装在全球超过2.4亿个网站以及210万台Web服务器之上。PHP代表超文本预处理器,它主...

Miss_Hello_World
2015/09/02
87
0
《Go Web 编程》PHP网站版--PHP-For-Go-Web

PHP-For-Go-Web 是用 php+bootstrap3 来解析《Go Web 编程》的 md 文件。构建本地或者远程网站。妈妈再也不用担心我的网速了。 从https://github.com/astaxie/build-web-application-with-g...

军师ives
2015/10/29
694
0

没有更多内容

加载失败,请刷新页面

加载更多

以太坊中文文档翻译-区块

本文原文链接 点击这里获取Etherscan API 中文文档(完整版) 完整内容排版更好,推荐读者前往阅读。 区块(Blocks) 区块相关的 API,接口的参数说明请参考Etherscan API 约定, 文档中不单独...

Tiny熊
20分钟前
1
0
Linux 内核的一个问题

是virtio 驱动,但是没有启动 virtio-mmio virtio-mmio.0: Failed to enable 64-bit or 32-bit DMA. Trying to continue, but this might not work.....[ 1.047924] md: ... autorun......

MtrS
44分钟前
2
0
MySQL主从配置

17.1 MySQL主从介绍 17.2 准备工作 17.3 配置主 17.4 配置从 17.5 测试主从同步 一、 MySQL主从介绍

tobej
54分钟前
2
0
读书replay《博弈与社会》.1.20190526

前情 《美丽心灵》,一部讲数学家约翰·福布斯·纳什的电影,我第一次听到博弈理论就是在这部电影里。看过电影之后就一直想知道,博弈论究竟讲了什么。很久之后,20190417这天,我刷JD的购物...

wanxiangming
今天
2
0
iOS TableView层级结构剖析

首先上图 下面来分析一下tableView的层级结构 tableView的组成: 1.整个tableView有且仅有一个头部和尾部就是tableViewHeadView和tableViewFooterView2.tableView 可以有多个section,一个s...

HOrange
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部