代码之家  ›  专栏  ›  技术社区  ›  William Ross

web2py将存储对象转换为字符串

  •  0
  • William Ross  · 技术社区  · 9 年前

    curl -H "Content-Type: application/json" --data @mydata.json https://mywebsite/doWork
    

    在我的web2py控制器中,我将其设置为读取POST请求。当我检查请求时。通过返回vars,它包含完整的JSON数据,但请求。VAR的类型为“胶子”类。存储存储'。

    我需要控制器中字符串格式的数据。然而,如果我使用str(request.vars),web2py会在我的数据前面附加一个存储标签。

    @request.restful()
    def doWork():
    
        def POST(*args, **vars):
            return(request.vars)
    
        return locals()
    

    假设mydata。json文件很简单,如:

    {

    如果我将行return(request.vars)更改为return(str(request.vars)),则输出现在为:<存储{u'key:u'value}>

    如何转换此请求。vars到字符串,而不将存储标记追加到前面,并将双引号更改为单引号?

    1 回复  |  直到 9 年前
        1
  •  2
  •   Anthony    9 年前

    如果你想转换 vars 回到JSON,您可以使用Python json 图书馆或仅使用 response.json

        return response.json(vars)
    

    .json 扩展到请求并简单返回

        return vars
    

    curl -H "Content-Type: application/json" --data @mydata.json https://mywebsite/doWork.json
    

    在这种情况下,web2py将自动将响应转换为JSON。