mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-04-19 18:56:03 +00:00
02_RSS: allow queries in URL
git-svn-id: https://svn.fhem.de/fhem/trunk@8935 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
799f49645e
commit
bb6ebc107e
@ -219,26 +219,21 @@ RSS_splitRequest($) {
|
|||||||
|
|
||||||
# http://hostname:8083/fhem/rss
|
# http://hostname:8083/fhem/rss
|
||||||
# http://hostname:8083/fhem/rss/myDeviceName.rss
|
# http://hostname:8083/fhem/rss/myDeviceName.rss
|
||||||
# http://hostname:8083/fhem/rss/myDeviceName.jpg
|
# http://hostname:8083/fhem/rss/myDeviceName.jpg&t=47110.815
|
||||||
# |--------- url ----------| |---name --| ext
|
# |--------- url ----------| |---name --| ext |--query--|
|
||||||
|
|
||||||
my ($request) = @_;
|
my ($request) = @_;
|
||||||
|
|
||||||
if($request =~ /^.*\/rss$/) {
|
|
||||||
# http://localhost:8083/fhem/rss
|
|
||||||
return (undef,undef); # name, ext
|
|
||||||
} else {
|
|
||||||
# http://hostname:8083/fhem/rss/myDeviceName.rss
|
# http://hostname:8083/fhem/rss/myDeviceName.rss
|
||||||
# http://hostname:8083/fhem/rss/myDeviceName.jpg
|
# http://hostname:8083/fhem/rss/myDeviceName.jpg
|
||||||
# http://hostname:8083/fhem/rss/myDeviceName.png
|
# http://hostname:8083/fhem/rss/myDeviceName.png
|
||||||
# http://hostname:8083/fhem/rss/myDeviceName.html
|
# http://hostname:8083/fhem/rss/myDeviceName.html
|
||||||
my $call= $request;
|
use constant REGEXP => '^.*\/rss\/([^\/]*)\.(jpg|png|rss|html)(&(.*))?$';
|
||||||
$call =~ s/^.*\/rss\/([^\/]*)$/$1/;
|
if($request =~ REGEXP) {
|
||||||
my $name= $call;
|
return ($1,$2,$4);
|
||||||
$name =~ s/^(.*)\.(jpg|png|rss|html)$/$1/;
|
} else {
|
||||||
my $ext= $call;
|
#main::Debug "not matched";
|
||||||
$ext =~ s/^$name\.(.*)$/$1/;
|
return(undef,undef,undef);
|
||||||
return ($name,$ext);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -834,7 +829,13 @@ RSS_CGI(){
|
|||||||
|
|
||||||
my ($request) = @_; # /rss or /rss/name.rss or /rss/name.jpg or /rss/name.png
|
my ($request) = @_; # /rss or /rss/name.rss or /rss/name.jpg or /rss/name.png
|
||||||
|
|
||||||
my ($name,$ext)= RSS_splitRequest($request); # name, ext (rss, jpg, png)
|
my ($name,$ext,$query)= RSS_splitRequest($request); # name, ext (rss, jpg, png, html), query
|
||||||
|
# query is unused
|
||||||
|
|
||||||
|
#main::Debug "Request: $request";
|
||||||
|
#main::Debug " Name : $name";
|
||||||
|
#main::Debug " Ext : $ext";
|
||||||
|
#main::Debug " Query : $query";
|
||||||
|
|
||||||
if(defined($name)) {
|
if(defined($name)) {
|
||||||
if($ext eq "") {
|
if($ext eq "") {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user