Развертывание API тестовой колбы в pythonanywhere - PullRequest
0 голосов
/ 28 марта 2019

Я пытаюсь развернуть пример приложения API фляги, указанного в документе фляги в pythonanywhere.


from flask import Flask, request
from flask_restful import Resource, Api

app = Flask(__name__)
api = Api(app)


todos = {}

class TodoSimple(Resource):
    def get(self, todo_id):
        return {todo_id: todos[todo_id]}

    def put(self, todo_id):
        todos[todo_id] = request.form['data']
        return {todo_id: todos[todo_id]}

api.add_resource(TodoSimple, '/<string:todo_id>')

if __name__ == '__main__':
    app.run()

Когда я тестировал это приложение локально в pycharm, я успешно запустил приложение, отправив данные с помощью

curl http://localhost:5000/todo1 -d "data=Remember the milk" -X PUT

команда в терминале Pycharm.

Результат, который я получил,

{ "todo1": "Помни о молоке" }

Но когда я тестировал развертывание с использованием Postman, я получил

Запрошенный URL не найден на сервере. Если вы ввели URL-адрес вручную, проверьте правильность написания и повторите попытку

Параметры, используемые в параметрах Query в Postman: ключевые данные значение: «Помни о молоке»

Результат, полученный при локальном запуске приложения, является правильным. Что я делаю не так?

PS: При использовании pythonany везде я использовал

http://www.mydomain.pythonanywhere.com

Ответы [ 2 ]

1 голос
/ 02 апреля 2019

Данные должны отправляться на вкладке «Тело», а не на вкладке «Параметр».

1 голос
/ 28 марта 2019

Вам нужно заменить http://localhost:5000/ на url от pythonanywhere, например, http://yourusername.pythonanywhere.com Если вы не платили и не настроили свой собственный домен

...