buildProxiedUrl static method

String buildProxiedUrl(
  1. String proxyBase,
  2. String targetAbsoluteUrl
)

Builds a proxied URL for a target absolute URL.

Supported proxy patterns:

  • query style: https://proxy.example/?url=
  • path style: https://proxy.example/
  • template style: https://proxy.example/{url}

Implementation

static String buildProxiedUrl(String proxyBase, String targetAbsoluteUrl) {
  if (proxyBase.contains('{url}')) {
    return proxyBase.replaceAll(
        '{url}', Uri.encodeComponent(targetAbsoluteUrl));
  }
  if (isQueryStyleProxyBase(proxyBase)) {
    return '$proxyBase${Uri.encodeComponent(targetAbsoluteUrl)}';
  }
  return '$proxyBase$targetAbsoluteUrl';
}