Python请求使用url变量访问flask路径

时间:2015-03-03 18:17:33

标签: python flask python-requests

我一直在尝试使用requests来访问我创建的烧录Web服务。我遇到的问题是如何访问其中包含url变量的路由。

例如,如果我有路线:

@app.route('/v1/game/<gameid>', methods = ['POST'])
def testing(gameid):
  return jsonify({'status':'success'})

我无法找到通过请求访问此路线的方法。 我最近的尝试是

def test_testing(self):
  url = self.base + 'gameid'
  payload = {'<gameid>': 200}
  headers = {'content-type': 'application/json'}
  r = requests.post(url, data = json.dumps(payload) ,headers=headers)

def test_testing(self):
  url = self.base + '<gameid>'
  payload = {'<gameid>': 200}
  headers = {'content-type': 'application/json'}
  r = requests.post(url, params = payload, headers=headers)

def test_testing(self):
  url = self.base + '200'
  payload = {'otherdata': 'stuff'}
  headers = {'content-type': 'application/json'}
  r = requests.post(url, data = payload, headers=headers)

两者都返回404,所以我知道他们没有达到

2 个答案:

答案 0 :(得分:0)

您指定的方式是gameid进入网址,而不是有效负载。例如:/v1/game/1234

答案 1 :(得分:0)

弄清楚我的问题是什么。我在某种程度上导致python将'/'字符添加到我试图添加到网址的数字中。

让其他人参考正确的方法来实现我正在寻找的功能

def test_testing(self):
  url = self.base + str(gameid)  #the base ends with '/v2/game/'
  headers = {'content-type': 'application/json'}
  r = requests.post(url,headers=headers)