【问题标题】:How to connect Flask REST API to HTML page如何将 Flask REST API 连接到 HTML 页面
【发布时间】:2021-08-17 19:18:43
【问题描述】:

我已经使用烧瓶创建了一个 REST-API,所以现在我不知道如何将它与 HTML 页面连接起来。 听到的是我的 rest-api 的 app.py 代码 从阻止列表导入阻止列表 重新进口 从烧瓶进口烧瓶,jsonify 从 flask_restful 导入 API 从 flask_jwt_extended 导入 JWTManager

    import redis

    from db import db
    from jwt import PyJWKClient
    from resources.user import UserRegister, User, UserLogin, TokenRefresh, UserLogout
    from resources.item import Item, ItemList
    from resources.store import Store, StoreList

    app = Flask(__name__)
    app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///data.db"
    app.config["SQLALCHEMY_TRACK_MODIFICATIONS"] = False
    app.config["PROPAGATE_EXCEPTIONS"] = True
    app.config["JWT_BLACKLIST_ENABLED"] = True


   app.secret_key = "jose"

   api = Api(app)


   @app.before_first_request
     def create_tables():
         db.create_all()


    jwt = JWTManager(app)  # not creating an auth

    jwt_redis_blocklist = redis.StrictRedis(
        host="localhost", port=5000, decode_responses=True
     )


    @jwt.expired_token_loader
    def check_if_token_is_revoked(jwt_header, jwt_payload):
        jti = jwt_payload["jti"]
        token_in_redis = jwt_redis_blocklist.get(jti)
        return token_in_redis is not None

    @jwt.token_in_blocklist_loader
   def check_if_token_in_blacklist(jwt_header, jwt_payload):
        return jwt_payload["jti"] in blocklist


    api.add_resource(Store, "/store/<string:name>")
    api.add_resource(StoreList, "/stores")
    api.add_resource(Item, "/item/<string:name>")
    api.add_resource(ItemList, "/items")
    api.add_resource(UserRegister, "/register")
    api.add_resource(User, "/user/<int:user_id>")
    api.add_resource(UserLogin, "/login")
    api.add_resource(UserLogout, "/logout")

    api.add_resource(TokenRefresh, "/refresh")

   if __name__ == "__main__":
       db.init_app(app)
       app.run(port=5000, debug=True)

我不知道如何从 API 获取数据并将其显示到 HTML 页面

【问题讨论】:

    标签: python api flask


    【解决方案1】:
    @app.route("/")
    def page_home():
        # YOUR CODE HERE
        return flask.render_template('home.html')
    

    像上面一样,你可以渲染 html 文件

    【讨论】:

      猜你喜欢
      • 2017-11-22
      • 2016-07-23
      • 1970-01-01
      • 2020-01-10
      • 2020-09-02
      • 2016-05-31
      • 2022-11-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多