每次API收到请求时都执行python脚本

每次API收到请求时都执行python脚本,python,flask,flask-restful,Python,Flask,Flask Restful,这是我的简单RESTAPI 我从get_jira脚本中获取jira变量 这是另一个python脚本,它向JIRARESTAPI发送POST请求以获取新的JIRAID 而且效果很好,但只有一次。当我启动应用程序并向其发送GET请求时,它会给我新的jira ID,比如说ABC-01。问题是,当我发送另一个GET请求以获取下一个jira ID时,它又给了我ABC-01 看起来get_jira只执行一次,不管我发送多少个get请求。唯一的方法是重新启动应用程序 每次我向api发送get请求时,有没有办法

这是我的简单RESTAPI

我从get_jira脚本中获取jira变量

这是另一个python脚本,它向JIRARESTAPI发送POST请求以获取新的JIRAID

而且效果很好,但只有一次。当我启动应用程序并向其发送GET请求时,它会给我新的jira ID,比如说ABC-01。问题是,当我发送另一个GET请求以获取下一个jira ID时,它又给了我ABC-01

看起来get_jira只执行一次,不管我发送多少个get请求。唯一的方法是重新启动应用程序

每次我向api发送get请求时,有没有办法获取新的jira ID jira

from flask_restful import Resource, Api, request
import fileinput

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

class Get(Resource):
        def get(self):

                ### ACCEPTED PARAMETERS
                source = request.get_json(force=True)['source']
                desc = request.get_json(force=True)['desc']

                ###
                .
                .
                ###

           ---> from get_jira import jira

                return jsonify({"desc":desc},{"source": source},{"jira": jira})

api.add_resource(Get, '/api/v1.0')

if __name__ == '__main__':
        app.run(port=5000,debug=True,use_reloader=True)

导入应该在文件的顶部完成,原因有几个,我在这里不介绍这些,但是我认为您最好研究一下python中导入的工作方式

根据我对你的代码的理解,它可以被重新格式化如下。注意,这假设您有一个名为get_jira.py的文件,其中包含一个名为generate_jira的函数,该函数每次运行时都返回一个新的jira名称

from flask_restful import Resource, Api, request
from get_jira import generate_jira
import fileinput

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

class Get(Resource):
    def get(self):

            ### ACCEPTED PARAMETERS
            source = request.get_json(force=True)['source']
            desc = request.get_json(force=True)['desc']
            jira = generate_jira()

            return jsonify({"desc":desc},{"source": source},{"jira": jira})

api.add_resource(Get, '/api/v1.0')

if __name__ == '__main__':
    app.run(port=5000,debug=True,use_reloader=True)