code: def _request(self, method, url, params, headers, content, form_content):
          # type: (str, str, Optional[Dict[str, str]], Optional[Dict[str, str]], Any, Optional[Dict[str, Any]]) -> ClientRequest
          
          request = ClientRequest(method, self.format_url(url))
  
          if params:
              request.format_parameters(params)
  
          if headers:
              request.headers.update(headers)
          # All requests should contain a Accept.
          # This should be done by Autorest, but wasn't in old Autorest
          # Force it for now, but might deprecate it later.
          if "Accept" not in request.headers:
              _LOGGER.debug("Accept header absent and forced to application/json")
              request.headers['Accept'] = 'application/json'
  
          if content is not None:
              request.add_content(content)
  
          if form_content:
              request.add_formdata(form_content)
  
          return request
docs: Create ClientRequest object.
  
          :param str url: URL for the request.
          :param dict params: URL query parameters.
          :param dict headers: Headers
          :param dict form_content: Form content