def deserialize_request(self, req):
<EOL>if req.content_length == <NUM_LIT:0>:<EOL><INDENT>return None<EOL><DEDENT>try:<EOL><INDENT>deserializer = self.method.deserializers(req.content_type)<EOL><DEDENT>except KeyError:<EOL><INDENT>raise webob.exc.HTTPUnsupportedMediaType()<EOL><DEDENT>if hasattr(deserializer, '<STR_LIT>'):<EOL><INDENT>for ext in self.extensions:<EOL><INDENT>try:<EOL><INDENT>deserializer.attach(ext.deserializers(req.content_type))<EOL><DEDENT>except KeyError:<EOL><INDENT>pass<EOL><DEDENT><DEDENT><DEDENT>return deserializer(req.body)<EOL>
Uses the deserializers declared on the action method and its
extensions to deserialize the request.  Returns the result of
the deserialization.  Raises `webob.HTTPUnsupportedMediaType`
if the media type of the request is unsupported.