El 13/9/22 a les 16:28, Michael Van Canneyt via fpc-pascal ha escrit:
On Tue, 13 Sep 2022, Luca Olivetti via fpc-pascal wrote:
Hello,
if I request, e.g.
http://localhost:8080 or http://localhost:8080/
fpwebfile returns the document defined as IndexPageName (in my case
index.html), but if I request
http://localhost:8080?xxx or http://localhost:8080/?xxx
I get a 404.
That's because TCustomFileModule.GetRequestFIleName with an empty
PathInfo uses the URI and thinks that the filename is ?xxx.
Maybe the
if (Result='') then
Result:=ARequest.URI;
should be eliminated?
No, it needs to strip the query parameter.
But that's already in PathInfo:
procedure ParseStartLine(Request : TFPHTTPConnectionRequest; AStartLine
: String);
Function GetNextWord(Var S : String) : string;
Var
P : Integer;
begin
P:=Pos(' ',S);
If (P=0) then
P:=Length(S)+1;
Result:=Copy(S,1,P-1);
Delete(S,1,P);
end;
Var
S : String;
I : Integer;
begin
if aStartLine='' then
exit;
Request.Method:=GetNextWord(AStartLine);
Request.URL:=GetNextWord(AStartLine);
S:=Request.URL;
I:=Pos('?',S);
if (I>0) then
S:=Copy(S,1,I-1);
If (Length(S)>1) and (S[1]<>'/') then
S:='/'+S
else if S='/' then
S:='';
Request.PathInfo:=S; <<<<<<<<<<<<
Bye
--
Luca
Michael.
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal