代码之家  ›  专栏  ›  技术社区  ›  santiago92

需要整数

  •  0
  • santiago92  · 技术社区  · 8 年前

    我是Python3的新手。我为Python3.5使用aiohttp模块。 运行项目时,出现以下错误

    TypeError: an integer is required (got type str) 
    

    堆栈跟踪为:

    Traceback (most recent call last):
      File "/home/santi/tesis/tanner/server.py", line 82, in <module>
        srv = loop.run_until_complete(f)
      File "/usr/lib/python3.5/asyncio/base_events.py", line 373, in run_until_complete
        return future.result()
      File "/usr/lib/python3.5/asyncio/futures.py", line 274, in result
        raise self._exception
      File "/usr/lib/python3.5/asyncio/tasks.py", line 240, in _step
        result = coro.send(None)
      File "/usr/lib/python3.5/asyncio/base_events.py", line 949, in create_server
        sock.bind(sa)
    

    代码是:

    if __name__ == '__main__':
        loop = asyncio.get_event_loop()
        f = loop.create_server(
            lambda: HttpRequestHandler(debug=False, keep_alive=75),'0.0.0.0','8090')
        srv = loop.run_until_complete(f)
        print('serving on', srv.sockets[0].getsockname())
        try:
            loop.run_forever()
        except KeyboardInterrupt:
            pass
    
    • 我的代码中有什么错误?
    • 我做错了什么?
    1 回复  |  直到 8 年前
        1
  •  2
  •   Revan    8 年前

    端口号应为整数:

    f = loop.create_server(
        lambda: HttpRequestHandler(debug=False, keep_alive=75), '0.0.0.0', 8090)