Php 如何从URL提取会话ID?
嗨,可以使用php从url获取嵌入式会话id吗 从根url中,网站将生成一个会话id,该id位于url之间,类似于此 i、 ePhp 如何从URL提取会话ID?,php,asp.net,perl,session,Php,Asp.net,Perl,Session,嗨,可以使用php从url获取嵌入式会话id吗 从根url中,网站将生成一个会话id,该id位于url之间,类似于此 i、 e 是否可以使用php/任何其他方法通过查询根url来检索“TS2K155XAAH50IWODSVJY35”,而不实际进入url 如果使用wget获取该页面,您将看到: ... HTTP request sent, awaiting response... 302 Found Location: http://www.sbstransit.com.sg/mobileiris
是否可以使用php/任何其他方法通过查询根url来检索“TS2K155XAAH50IWODSVJY35”,而不实际进入url 如果使用wget获取该页面,您将看到:
...
HTTP request sent, awaiting response... 302 Found
Location: http://www.sbstransit.com.sg/mobileiris/(xidluk550vzs5045l1cxkh55)/index.aspx [following]
这表示它正在对包含ID的URL执行302重定向
您可以编写Perl(或其他)代码来查找重定向的URL:
#!/usr/bin/perl
use warnings;
use strict;
use LWP::UserAgent;
my $ua = LWP::UserAgent->new;
$ua->requests_redirectable([]); # don't follow any redirects
my $response = $ua->get('http://www.sbstransit.com.sg/mobileiris/');
my $loc = $response->header('Location');
print "redirected to=$loc\n";
因此,您可以使用
$tokens[2]
获取会话id,您所说的“不实际进入url”是什么意思?你想阻止的是,把自己变成一个电子,而你却不想在网上冲浪?( ;) )
<?php
$url = 'http://www.sbstransit.com.sg/mobileiris/(ts2k1e55xaah50iwodsvjy35)/index.aspx';
$url_arr = parse_url($url);
print_r($url_arr); // debug output
$tokens = explode('/', $url_arr['path']);
print_r($tokens); // debug output
?>
Array
(
[scheme] => http
[host] => www.sbstransit.com.sg
[path] => /mobileiris/(ts2k1e55xaah50iwodsvjy35)/index.aspx
)
Array
(
[0] =>
[1] => mobileiris
[2] => (ts2k1e55xaah50iwodsvjy35)
[3] => index.aspx
)