【发布时间】:2019-07-02 20:08:34
【问题描述】:
我尝试使用 Python 实现 API,并使用烧瓶来帮助自己学习和练习 REST。
这个想法是接收带有如下数据的 HTTP POST: {"startDate":"2015-07-01","endDate":2015-07-08","within":{"value":9000,"units":miles}} 并将一些数据发送到NASA API(端点)。
我能够创建一个 POST 方法,并且能够接收数据(在 POSTMAN 和浏览器中)。以下是相关代码:
@neows.route('/UserInput',methods=['GET','POST'])
def UserInput():
startDate = request.args.get('startDate')
endDate = request.args.get('endDate')
#print (type(startDate))
#print (type(endDate))
getAsteroids(startDate,endDate)
return jsonify(request.args)
但是当我从上面的 POST 中提取一些数据以发送到 NASA API (GET) 时,我收到了这个错误:
werkzeug.exceptions.BadRequestKeyError
这是我要访问的网址:(https://api.nasa.gov/neo/rest/v1/feed?start_date=START_DATE&end_date=END_DATE&api_key=API_KEY)
我可以在 POSTMAN 和浏览器上点击我的代码之外的网址。
带有错误的相关代码段发布在下面,似乎引发错误的行以斜体显示(标有 *)。
def getAsteroids(startDate,endDate):
API_KEY='xxx'
print (startDate)
print (endDate)
*result=request.args["https://api.nasa.gov/neo/rest/v1/feed?
start_date="+startDate+"&end_date="+endDate+"&api_key="+API_KEY+""]*
如果有人能帮助我理解和解决这个问题,我将不胜感激。
【问题讨论】: