使用file_get_contents提交http post
我曾经发过一篇讲使用curl获取需要登陆内容的文章,但其实,自5.0开始,使用file_get_contents就可以完成.(前提是开启了allow_url_fopen),下面以一个简单的例子说明一下:
1.先看一下目标网页(假设是http://localhost/response.php)
response.php
|
以下是代码片段: <?php |
本文讲述的只是http post请求的发送,所以,目标页只是回显所收到的post和cookie
2.请求页
request.php
|
以下是代码片段: <?php |
这个文件首先使用stream_context_create()构造了一个http请求,然后使用file_get_contents发送出去,返回的结果是:
|
以下是代码片段: Array |
所以上可以看出,只要你了解http协议,完全可以使用这两个函数构造出所有正常的http请求,比如代理,断点续传等...
对照之前的关于curl的文章,就可以用来取得需要用户验证的内容了.
建议继续学习:
- JSONP与POST方式请求 (阅读:10889)
- YSLOW法则中,为什么yahoo推荐用GET代替POST? (阅读:11048)
- POST与GET的区别及RESTful (阅读:7319)
- 如何在nginx的access log中记录post请求的参数 (阅读:3904)
- Ajax还是普通Post? (阅读:2916)
- HTTP 的 POST 参数提交和上传的不同与 Mojolicious 的实现. (阅读:1877)
扫一扫订阅我的微信号:IT技术博客大学习
- 作者:tim 来源: PHPec
- 标签: file_get_content post
- 发布时间:2009-10-21 22:17:32
-
[927] WordPress插件开发 -- 在插件使用 -
[133] 解决 nginx 反向代理网页首尾出现神秘字 -
[52] 如何保证一个程序在单台服务器上只有唯一实例( -
[52] 整理了一份招PHP高级工程师的面试题 -
[50] 全站换域名时利用nginx和javascri -
[50] 海量小文件存储 -
[50] 用 Jquery 模拟 select -
[49] CloudSMS:免费匿名的云短信 -
[48] Innodb分表太多或者表分区太多,会导致内 -
[47] jQuery性能优化指南
