PHP使用CURL获取302跳转后的地址实例
直接上代码:
/*返回一个302地址*/
function curl_post_302($url, $vars) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // 302 redirect
curl_setopt($ch, CURLOPT_POSTFIELDS, $vars);
$data = curl_exec($ch);
$Headers = curl_getinfo($ch);
curl_close($ch);
if ($data != $Headers)
return $Headers["url"];
else
return false;
}
上面的这个curl_post_302 函数可以直接取到302跳转地址了.
相关推荐
-
php获取当前页面完整URL地址
使用PHP编写程序的时候,我们常常想要获取当前页面的URL.下面提供一个用于获取当前页面URL的函数以及使用方法: 示例一: <?php // 说明:获取完整URL function curPageURL() { $pageURL = 'http'; if ($_SERVER["HTTPS"] == "on") { $pageURL .= "s"; } $pageURL .= "://"; if ($_SERVER[&q
-
php 获取完整url地址
主要是获取到地址栏的一些信息,域名,端口参数等 复制代码 代码如下: <?php //获取域名或主机地址 echo $_SERVER['HTTP_HOST']."<br>"; //获取网页地址 echo $_SERVER['PHP_SELF']."<br>"; //获取网址参数 echo $_SERVER["QUERY_STRING"]."<br>"; //来源网页的详细地址 echo
-
PHP为表单获取的URL 地址预设 http 字符串函数代码
复制代码 代码如下: if (!preg_match("/^(http|ftp):/", $_POST['url'])) { $_POST['url'] = 'http://'.$_POST['url']; } 该代码先用正则表达式检查字符串中是否有"http"或"ftp"和冒号":",如果没有,在字符串前添加"http://"
-
PHP URL地址获取函数代码(端口等) 推荐
php 获得当前的脚本网址(只有路径) 复制代码 代码如下: function GetCurUrl() { if(!empty($_SERVER["REQUEST_URI"])) { $scrtName = $_SERVER["REQUEST_URI"]; $nowurl = $scrtName; } else { $scrtName = $_SERVER["PHP_SELF"]; if(empty($_SERVER["QUERY_ST
-
PHP获取当前完整URL地址的函数
这里主要是给大家分享一个非常实用的PHP函数,代码很简单,就不多废话了,小伙伴们需要的话直接拿去用. 复制代码 代码如下: //php获取当前访问的完整url地址 function get_current_url(){ $current_url='http://'; if(isset($_SERVER['HTTPS'])&&$_SERVER['HTTPS']=='on'){ $current_url='https://'; } if($_SE
-
基于PHP CURL获取邮箱地址的详解
CURL可谓居家旅行必备之杀人良药,为何如此形容?就是因为他好用方便能实现页面抓取模拟登录采集等一系列功能.记得第一次接触CURL的时候是要实现完成从邮箱用户列表的抓取.当时为了赶进度没有细细研究只是网上找了一些资料实现了功能.现在把当初的代码整理一下功能依旧能用 复制代码 代码如下: <?php error_reporting ( 0 ); set_time_limit ( 0 ); header ( "Content-Type: text/html; charset=GB2312
-
PHP使用CURL获取302跳转后的地址实例
直接上代码: 复制代码 代码如下: /*返回一个302地址*/ function curl_post_302($url, $vars) { $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); c
-
PHP curl实现抓取302跳转后页面的示例
PHP的CURL正常抓取页面程序如下: $url = 'http://www.baidu.com'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_VERBOSE, true); curl_setopt($ch, CURLOPT_HEADER, true); curl_setopt($ch, CURLOPT_NOBODY, true); curl_setopt($ch, CURLO
-
iOS 拦截重定向302跳转的方法详解
一:前言 公司同事在做项目的时候遇到一个302地址跳转的问题,具体需求如下: 1.公司是做WIFI覆盖的,需要在下载APP后才能注册登录以后,自动连接到外网 2.苹果底层不允许我们码农进行WIFI的切换,所以公司考虑使用302重定向来实现,我通过2种方法来实现,NSURLConnetion和NSURLSession 二:NSURLConnetion方法 大概的思路:使用NSURLConnetion类的NSURLConnectionDataDelegate中的代理方法 复制代码 代码如下: -
-
关于php curl获取301或302转向的网址问题的解决方法
在使用php的curl获取远程文件,代码如下: 复制代码 代码如下: <? $ghurl = isset($_GET['id']) ? $_GET['id']:'http://www.baidu.com/'; // php 获取 function getContents($url){ $header = array("Referer: http://www.baidu.com/"); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,
-
PHP CURL获取cookies模拟登录的方法
要提取google搜索的部分数据,发现google对于软件抓取它的数据屏蔽的厉害,以前伪造下 USER-AGENT 就可以抓数据,但是现在却不行了.利用抓包数据发现,Google 判断了 cookies,当你没有cookies的时候,直接返回 302 跳转,而且是连续几十个302跳转,根本抓不了数据.因此,在发送搜索命令时,需要先提取 cookies 并保存,然后利用保存下来的这个cookies再次发送搜索命令即可正常抓数据了.这其实和论坛的模拟登录一个道理,先POST登录,获取cookies并
-
php使用curl获取https请求的方法
本文实例讲述了php使用curl获取https请求的方法.分享给大家供大家参考.具体分析如下: 今日在做一个项目,需要curl获取第三方的API,对方的API是https方式的. 之前使用curl能获取http请求,但今天获取https请求时,出现了以下的错误提示:证书验证失败. SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_
-
PHP cURL获取微信公众号access_token的实例
1.开发微信公众号首先要获取access_token,在运行代码前现在开发者设置中把本服务器IP添加到白名单中 public function index(){ $appId = 'wxd0e50fe967dccccc'; $appSecret = 'd7f6be12ce41b60ss0f45054';//虚拟的,不要用 $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=&
-
微信小程序用户位置权限的获取方法(拒绝后提醒)
微信小程序获取用户当前位置有三个方式: 1. wx.getLocation(多与wx.openLocation一起用) 获取当前的精度.纬度.速度.不需要授权.当type设置为gcj02 返回可用于wx.openLocation的坐标 2. wx.chooseLocation 需要授权,打开地图选择位置 第一次调用方法时先出现 允许权限之后之后再出现 如果第一次就不允许,则一直调用wx.chooseLocation的fail方法 3. wx.openLocation 需要授权,使用微信内置地图查
-
layui table 复选框跳页后再回来保持原来选中的状态示例
layui table默认跳页后不存在源页面选中的状态.如果要实现记录源页面的选中状态,需要定义一个全局变量来记录数据选中状态. 1.修改table.js ;layui.define(["laytpl", "laypage", "layer", "form"], function (e) { "use strict"; var t = layui.$, i = layui.laytpl, a = layui
-
springBoot前后端分离项目中shiro的302跳转问题
springBoot前后端分离项目shiro的302跳转 项目是使用的springboot ,使用的shiro做的用户鉴权.在前端请求时当用户信息失效,session失效的时候,shiro会重定向到配置的login.jsp 页面,或者是自己配置的logUrl. 因是前后端分离项目,与静态资源文件分离,固重定向后,接着会404. 经过查找网上配置资料,发现302原因是 FormAuthenticationFilter中onAccessDenied 方法做了相应处理.那知道问题所在,就可以有解决方了
随机推荐
- 简述Ajax的优点与缺点
- vbscript 注册表脚本书写
- js 利用image对象实现图片的预加载提高访问速度
- oracle ORA-00031:session marked for kill(标记要终止的会话)解决方法
- C# 没有动态的数组,可以用arraylist或list取代
- 大白话讲解JavaScript的Promise
- JavaScript位置与大小(1)之正确理解和运用与尺寸大小相关的DOM属性
- Javascript中的delete介绍
- C#实现Access通用访问类OleDbHelper完整实例
- JavaScript基本的输出和嵌入式写法教程
- 静态页面实现 include 引入公用代码的示例
- 本机每个盘都添加上卷标的命令
- MS-DOS版本的历史介绍
- 数据库表的查询操作(实验二)
- js style动态设置table高度
- Java Spring 事务回滚详解
- 关于网站如何赚钱方法之广告-写给新站长
- Apache启动提示错误undefined symbol: libiconv_open解决方法
- Java陷阱之assert关键字详解
- java 虚拟机深入了解