本文整理匯總了Python中protocol.Protocol.unpackReq方法的典型用法代碼示例。如果您正苦於以下問題:Python Protocol.unpackReq方法的具體用法?Python Protocol.unpackReq怎麽用?Python Protocol.unpackReq使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類protocol.Protocol
的用法示例。
在下文中一共展示了Protocol.unpackReq方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: CgiFactory
# 需要導入模塊: from protocol import Protocol [as 別名]
# 或者: from protocol.Protocol import unpackReq [as 別名]
class CgiFactory(object):
"""cgi 工廠,用於生成各種cgi"""
def __init__(self, field):
self._field = field
self._proto = Protocol()
def gen_error_cgi(self, errno, errmsg):
"""產生一個錯誤處理的cgi"""
cgi = CgiBase(self._proto)
cgi.gen_json_reply(errno, errmsg)
return cgi
def gen_cgi(self):
try:
self._proto.unpackReq(self._field)
interfaceName = self._proto.req["interfaceName"]
intent = interfaceName.split(".");
if len(intent) != 2:
raise InterErr(InterErr.E_INVALID_PARA,
"interfaceName[%s] is invalid" % interfaceName)
intent[0] = intent[0].strip()
intent[1] = intent[1].strip()
str_module = "worker.%s.%s" % (intent[0], intent[1])
module = __import__(str_module, fromlist=[""])
if not hasattr(module, intent[1]):
raise InterErr(InterErr.E_NO_INTERFACE,
"no that interfaceName[%s]" % intent[1])
inter_obj = getattr(module, intent[1])(self._proto)
return inter_obj
except ImportError, e:
Log.error(traceback.format_exc())
e = InterErr(InterErr.E_INVALID_PARA, "invalid interfaceName")
return CgiBase(self._proto, exception=e)
except Exception, e:
Log.error(traceback.format_exc())
return CgiBase(self._proto, exception=e)