构建用户界面围绕API

2024-05-18 16:59:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个应用程序运行在Python中,使用Flask。你知道吗

API的端点如下所示:

@app.route('/postIt', methods =['POST'])
def postReview():
    #print flask.request
    if flask.request.method == 'POST':
        posts  = flask.request.get_json()
        print posts
    return str(posts)

我正在尝试使用CURL发送请求:

curl http://127.0.0.1:5000/postIt -d @post.json -H "Content-Type: application/json"

其中post.json如下所示:

{"post1":"3", "post2": "2", "post3":"3", "post4":"4" "post5": "5"}

有谁能告诉我如何用5个标签为post1、post2、post3、post4、post5的框构建一个简单的HTML form,并要求用户将值发布到其中,然后我可以将这些值发送到我的pythonapi,就像我在上面使用CURL所做的一样。你知道吗


Tags: 程序运行jsonflaskpost2requestpost4curlpost
1条回答
网友
1楼 · 发布于 2024-05-18 16:59:08

可以使用jQuery构造json POST请求

<form id="form1" action="http://127.0.0.1:5000/postIt"> 
  <input name="post1" value="3">
  <input name="post2" value="2">
  <input name="post3" value="3">
  <input name="post4" value="4">
  <input name="post5" value="5">
  <input type="submit" value="submit">
</form>

<script>
  $('#form1').submit(function(e) {
    e.preventDefault();
    var form = $(this);
    $.ajax({
      url: form.attr('action'),
      type: 'post',
      dataType: 'json',
      data: JSON.stringify(form.data())
    })
    .done(function(data) {
      console.log(data);
    });
  });
</script>

相关问题 更多 >

    热门问题