Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Извлечение хоста и протокола из URL в скрипте Inno Setup на Паскале

Delphi , Интернет и Сети , URL

При разработке приложений часто возникает необходимость извлечь хост и протокол из URL. В этом материале мы рассмотрим, как это можно сделать в скрипте Inno Setup на Паскале.

Проблема

Разработчик хочет извлечь хост и протокол из URL в скрипте Inno Setup на Паскале. Например, пользователь вводит URL приложения и API при установке, и необходимо получить хост для настройки «allowedOrigins».

Пример URL:

  • https://somelink.com/#/login
  • https://someapilink.com/api/

Желаемый результат:

  • https://somelink.com
  • https://someapilink.com

Решение

Для полного разбора URL можно воспользоваться функцией WinAPI ParseURL, но если нужен только хост и протокол, можно написать свой парсер.

Ниже представлен код функции на Паскале, извлекающий хост и протокол из URL:

function GetUrlHostName(Url: string): string;
var
  P: Integer;
begin
  Result := '';
  P := Pos('://', Url);
  if P > 0 then
  begin
    Result := Copy(Url, P + 3, Length(Url) - P - 1);
    P := Pos('/', Result);
    if P > 0 then Result := Copy(Result, 1, P - 1);
    P := Pos('#', Result);
    if P > 0 then Result := Copy(Result, 1, P - 1);
    P := Pos(':', Result);
    if P > 0 then Result := Copy(Result, 1, P - 1);
  end;
end;

function GetUrlProtocol(Url: string): string;
var
  P: Integer;
begin
  Result := '';
  P := Pos('://', Url);
  if P > 0 then
  begin
    Result := Copy(Url, 1, P - 1);
  end;
end;

Обратите внимание, что функция GetUrlHostName не учитывает возможные имя пользователя и пароль в URL.

Вывод

можно осуществить с помощью собственной функции парсинга URL. Это полезно, когда нужно получить хост для настройки «allowedOrigins» или других подобных случаев.

Создано по материалам из источника по ссылке.

Материал описывает, как извлечь хост и протокол из URL в скрипте Inno Setup на Паскале.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: URL ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-06-15 23:58:22/0.0027909278869629/0