处理 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 请求时出错的主要内容,如果未能解决你的问题,请参考以下文章