如何将相对URL 转换为绝对URL

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 20:04   1294   0
如何将相对URL 转换为绝对URL
2006-09-19 16:18

function GetAbsPath(CurPath:string;DirPath:string):string;
var Buffer:array[0..MAX_PATH - 1] of Char;
cBuf:Cardinal;
begin
cBuf:=sizeof(Buffer);
InternetCombineUrl(PChar(CurPath),PChar(DirPath),
Buffer,cBuf,ICU_BROWSER_MODE);
Result:=StrPas(Buffer);
end;

(HTML相关问题)

当前URL , 相对URL , 如何将相对URL 转换为绝对URL


例如:
已知页面当前的URL为
http://community.csdn.net/Expert/topic/xxxxx.asp
页面中的某个链接的href值为 ../link.asp
显然该链接的绝对地址应该为:
http://community.csdn.net/Expert/link.asp

请问

哪位有这样的函数 ,

补充:
相对 URL 有很多地方需要注意,
每个 ../ 表示上一级目录
./ 表示当前目录 ,可加可不加
/ 表示根目录
-----------------------------------------------------
function GetAbsPath(CurPath:string;DirPath:string):string;
var Buffer:array[0..MAX_PATH - 1] of Char;
cBuf:Cardinal;
begin
cBuf:=sizeof(Buffer);
InternetCombineUrl(PChar(CurPath),PChar(DirPath),
Buffer,cBuf,ICU_BROWSER_MODE);
Result:=StrPas(Buffer);
end;

要引用单元:WinInet
调用举例:
ShowMessage(GetAbsPath('http://community.csdn.net/Expert/topic/xxxxx.asp',
'../link.asp'));

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP