公理和烧瓶POST和GET请求,传递参数

时间:2018-09-05 16:01:11

标签: python flask vue.js axios

我正在学习Web应用程序的工作方式,并且成功地在前端和后端之间建立了连接之后,我设法用公理执行了get请求:

在我的烧瓶中行驶

@app.route('/api/random')

def random_number():
    k = kokos()
    print(k)

    response = {'randomNumber': k}
    return jsonify(response)

我的kokos()函数

def kokos():
    return (890)

我从后端获取数据的函数:

getRandomFromBackend () {
        const path = `http://localhost:5000/api/random`
        axios.get(path)
        .then(response => {this.randomNumber = response.data.randomNumber})
        .catch(error => {
          console.log(error)
        })
    }

现在假设我的应用程序中有一个输入字段,该字段的值我想在函数kokos()中使用以影响结果以及应用程序中将要显示的内容。有人可以解释一下该如何做?  这是POST请求的目的,我必须先发布然后才能获得?还是可以使用仍然GET并以某种方式传递“参数”?连GET和POST都适合吗?还是让我自己变得太复杂了?

这是做这类事情的正确方法吗?我只是已经用python写了很多代码,想简单地在服务器和客户端之间交换数据。

谢谢你,雅库布(Jakub)

1 个答案:

答案 0 :(得分:2)

您可以添加第二个参数

axios.get(path, {
    params: {
      id: 122
    }
  })
  .then ...

您可以像这样传递id,也可以像get params这样在python side的{​​{1}}中传递任何内容。

  

python侧[烧瓶](http://flask.pocoo.org/docs/1.0/quickstart/#accessing-request-data

要访问通过URL(?key = value)提交的参数,可以使用args属性:

we pass in URL
如果没有提供id,

id将被传递给kokos函数,它将为空白''

您可以阅读def random_number(): id = request.args.get('id', '') k = kokos(id) 文档,以提出复杂的请求。

  

https://github.com/axios/axios

如有疑问,请发表评论。