<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def before_request(self, request, method, url, headers):
 """Performs credential-specific before request logic. Args: request (Any):
 Unused. JWT credentials do not need to make an HTTP request to refresh. method (str):
 The request's HTTP method. url (str):
 The request's URI. This is used as the audience claim when generating the JWT. headers (Mapping):
 The request's headers. """

        # pylint: disable=unused-argument
        # (pylint doesn't correctly recognize overridden methods.)
        parts = urllib.parse.urlsplit(url)
        # Strip query string and fragment
        audience = urllib.parse.urlunsplit(
            (parts.scheme, parts.netloc, parts.path, "", ""))
        token = self._get_jwt_for_audience(audience)
        self.apply(headers, token=token)