将Python与Flask一起使用时,获得49-'在找到打开的端口时无法分配请求的地址

时间:2019-04-08 05:41:15

标签: python flask nmap

我正在使用Flask服务器为后端创建一个应用程序。我想让应用程序使用NMAP来显示可用端口,但出现错误。

我尝试重新启动计算机(Mac OS)。我还通过终端中的Python解释器测试了Python-NMAP命令,并且不会返回错误。但是从Flask运行命令确实可以。

import json
import nmap

from flask import Flask, render_template
from flask_cors import CORS

app = Flask(__name__, static_folder="../public/dist", template_folder="../public")
CORS(app)

def find_open_ports(host):
    """Uses Nmap to find the open ports on a given host"""
    nm = nmap.PortScanner()
    open_port_data = nm.scan(host, "0-500")
    return open_port_data["nmap"]

@app.route("/hosts/<host>", methods=["GET"])
def ports(host):
    open_ports = find_open_ports(host)
    return json.dumps(open_ports)

我希望在服务器运行时,点击URL localhost:5000/hosts/127.0.0.1将显示一个JSON,其中包括:

'scaninfo': {'tcp': {'method': 'connect', 'services': '1-500'}},但它具有: "scaninfo": {"error": ["Strange read error from 176.32.103.205 (49 - 'Can't assign requested address')\n"], "tcp": {"method": "connect", "services": "0-500"}

如何避免此错误?

0 个答案:

没有答案