Like read(), but assumes that body parts contains form
        urlencoded data.

async def form(self, *,
                   encoding: Optional[str]=None) -> List[Tuple[str, str]]:
        """Like read(), but assumes that body parts contains form
        urlencoded data.
        """
        data = await self.read(decode=True)
        if not data:
            return []
        if encoding is not None:
            real_encoding = encoding
        else:
            real_encoding = self.get_charset(default='utf-8')
        return parse_qsl(data.rstrip().decode(real_encoding),
                         keep_blank_values=True,
                         encoding=real_encoding)