API не работает - PullRequest
       1

API не работает

0 голосов
/ 28 июня 2018

Я новичок в Python и пытаюсь создать простой API. ниже код для того же.

from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"


if __name__ == '__main__':
    app.run(host='0.0.0.0',port=5000)

Я сохранил это как код "hello-world.py". Когда я пытаюсь запустить этот файл в командной строке с помощью команды Python

python hello-world.py

Команда выполнена в командной строке

Здесь у меня нет ошибки, но веб-страница не отображается. Ниже приведена ошибка на веб-странице.

http://localhost:5000/

Этот сайт недоступен localhost отказался подключаться. Поиск Google для localhost 5000 ERR_CONNECTION_REFUSED

1-й выпуск - даже после правильного выполнения кода, почему веб-страница не отображается

Теперь я ввожу команду python в командной строке, а затем снова пытаюсь запустить файл python hello-world.py. Здесь я получаю ошибку ниже

>>>  File "<stdin>", line 1
    python hello-world.py
               ^
SyntaxError: invalid syntax

2-й выпуск - почему я получаю сообщение об ошибке при попытке запустить hello-world.py

Пожалуйста, объясните мне, как решить эту проблему.

Ответы [ 2 ]

0 голосов
/ 28 июня 2018

Из того, что вы описываете, я думаю, что вы пытаетесь использовать Flask Quickstart . Если да, то выполнили ли вы в командной строке следующую команду?

C:\path\to\app>set FLASK_APP=hello.py

В этот момент, если вы запустите свой код и он правильно структурирован, вы должны увидеть

Running on http://127.0.0.1:5000/

Поскольку вы не видите «Запуск» в вашем приглашении, я бы предположил, что это не было сделано. Если это не сработает, я бы просто дважды проверил, установлен ли Flask, и видит ли его Python и правильно ли вы выполняете действия, описанные в руководстве.

Редактировать: Кроме того, я бы порекомендовал удалить дефис в hello-world.py. Это может помочь вам избежать ошибок здесь и в других местах в кодировании Python. См. Ответы на этот вопрос .

0 голосов
/ 28 июня 2018

1-й выпуск - брандмауэр или некоторые другие службы могут блокировать ваш порт.

2-й выпуск - вы работаете в интерактивном терминале. Пожалуйста, выполните команду в командной строке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...