这是我简单的rest api
我从jira
脚本中获取了get_jira
变量
这是另一个python脚本,它将POST请求发送到jira rest api以获取新的jira ID
它工作正常,但只有一次。当我启动应用程序并向其发送GET请求时,它为我提供了新的jira ID,例如ABC-01
。问题是,当我发送另一个GET请求以获取下一个jira ID时,它又给了我ABC-01
无论我将发送多少个GET请求,看来get_jira
仅执行一次。唯一的方法是重新启动应用程序
每当我向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)
答案 0 :(得分:1)
出于某些我不想在这里介绍的原因,应该在文件的顶部进行导入,但是我认为您可以对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)