Python 我如何向flask发出POST请求?
我是Flask的新手,我正在试图找到一种方法来调用下面代码中的elif语句,而不必在运行我的应用程序时手动键入url。换句话说,我希望能够在我的一个模板中提供一个url,该url将发出问题(标题)的POST请求。有人能给我一些见解吗Python 我如何向flask发出POST请求?,python,post,if-statement,get,flask,Python,Post,If Statement,Get,Flask,我是Flask的新手,我正在试图找到一种方法来调用下面代码中的elif语句,而不必在运行我的应用程序时手动键入url。换句话说,我希望能够在我的一个模板中提供一个url,该url将发出问题(标题)的POST请求。有人能给我一些见解吗 @application.route('/question/<title>', methods=['GET', 'POST']) def question(title): if request.method == 'GET': q
@application.route('/question/<title>', methods=['GET', 'POST'])
def question(title):
if request.method == 'GET':
question = r.get(title+':question')
return render_template('AnswerQuestion.html',
question = question)
elif request.method == 'POST':
submittedAnswer = request.form['submittedAnswer'];
answer=r.get(title+':answer')
if submittedAnswer == answer:
return render_template('Correct.html');
else:
return render_template('Incorrect.html',
answer = answer,
submittedAnswer = submittedAnswer);
@application.route('/question/',方法=['GET',POST']
问题(标题):
如果request.method==“GET”:
question=r.get(标题+':question')
返回呈现模板('AnswerQuestion.html',
问题=问题)
elif request.method==“POST”:
submittedAnswer=request.form['submittedAnswer'];
answer=r.get(标题+':answer')
如果提交人=回答:
返回render_模板('Correct.html');
其他:
返回呈现模板('error.html',
答案,
submittedAnswer=submittedAnswer);
看起来,在POST
请求中,您将获得表单的内容。您可以尝试创建一个表单,其action=“/question/some_title”
和method=“post”
。因此,在提交时,这将在您的代码的elif
部分进行处理。
或者您可以尝试通过JavaScript或jQuery发送am ajax请求,以及相关的数据、方法和URL 您能给我一个ajax请求的示例,该请求将包含一个URL,该URL将导致代码的elif部分吗?使用jQuery:
$.ajax({URL:'/question/some_title',方法:'post',数据:'someData you make want to pass'})代码>您可能想查看一下,以便更好地了解$.ajax的工作原理。或者$.post(“/question/some_title”,function(data){$(“.result”).html(data);})我不熟悉jquery和JS,所以我真的不知道如何实现您的解决方案。最后,我直接提供了一个url,比如非常感谢您的帮助!您不能提供将触发POST请求的URL。您需要提交表单(
)或使用JavaScript。