处理 Json 请求时出错
Posted
技术标签:
【中文标题】处理 Json 请求时出错【英文标题】:Error processing Json request 【发布时间】:2016-09-07 17:12:58 【问题描述】:我正在发送一个 json 请求并在 python 烧瓶服务中捕获请求参数以进一步处理。但是,当我 json 转储请求并尝试从中收集特定的参数值时,它给了我错误
"字符串索引必须是整数,而不是str"
这是我在python烧瓶中解析的json:
"description": "URL: https://sometest.xyz.com/test16/apicall\\n Issue: sample issue\\n Result: fail\\n Severity: low\\n Category: sample category", "issuetype": "name": "Bug", "priority": "name": "Trivial", "project": "sample-project", "summary": "sample issue - https://sometest.xyz.com/test16/apicall"
我无法弄清楚我在做什么。
这是我的 python 烧瓶代码:
从烧瓶进口烧瓶 来自烧瓶导入请求 从烧瓶导入 json 导入 httplib httplib.HTTPConnection.debuglevel = 2 app = Flask(__name__) @app.route('/', methods=['POST','GET']) 定义主(): _jsonreq = json.dumps(request.json) 返回 _jsonreq['project'] 如果 __name__ == "__main__": 应用程序运行(调试=真)【问题讨论】:
【参考方案1】:您正在将 JSON 字符串分配给 _jsonreq
,但随后尝试像字典一样使用它。尝试将您的代码更改为:
@app.route('/', methods=['POST','GET'])
def main():
_jsonreq = request.json
return _jsonreq['project']
【讨论】:
【参考方案2】:request.json()
已经是 JSON。
【讨论】:
以上是关于处理 Json 请求时出错的主要内容,如果未能解决你的问题,请参考以下文章
向 Controller 发送 Ajax 请求时出错,它不是 json 类型
将 json 和 HTTP“post”代码转换为 Swift 3 时出错
处理 json 数据时出错:无法读取数据,因为它的格式不正确