title: getting json response using requests object flask
body: <h3>webservice</h3>
  
  <pre><code>@app.route('/get-details')
  def getDetails():    
     cur.execute("select * from employee")
     rows = cur.fetchall()
     columns = [desc[0] for desc in cur.description]
     result = []
     for row in rows:
             row = dict(zip(columns, row))
             #json_row=json.dumps(row)
             result.append(row)
  
     json_response=json.dumps(result)
     response=Response(json_response,content_type='application/json; charset=utf-8')
     response.headers.add('content-length',len(json_response))
     response.status_code=200
     return response
  </code></pre>
  
  <h3>webserver</h3>
  
  <pre><code>@app.route('/get-details')
  def getDetails():
        r=requests.get('http://localhost:8084/get-details')
        return r.json() #error in this line, however r.text is rendering the result but in html
  </code></pre>
  
  <h3>Error</h3>
  
  <pre><code>Error on request:
  Traceback (most recent call last):
    File "/usr/local/lib/python2.7/dist-packages/werkzeug/serving.py", line 177, in run_wsgi
      execute(self.server.app)
    File "/usr/local/lib/python2.7/dist-packages/werkzeug/serving.py", line 165, in execute
      application_iter = app(environ, start_response)
    File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1836, in __call__
      return self.wsgi_app(environ, start_response)
    File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1820, in wsgi_app
      response = self.make_response(self.handle_exception(e))
    File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1403, in handle_exception
      reraise(exc_type, exc_value, tb)
    File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1817, in wsgi_app
      response = self.full_dispatch_request()
    File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1478, in full_dispatch_request
      response = self.make_response(rv)
    File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1577, in make_response
      rv = self.response_class.force_type(rv, request.environ)
    File "/usr/local/lib/python2.7/dist-packages/werkzeug/wrappers.py", line 827, in force_type
      response = BaseResponse(*_run_wsgi_app(response, environ))
    File "/usr/local/lib/python2.7/dist-packages/werkzeug/wrappers.py", line 57, in _run_wsgi_app
      return _run_wsgi_app(*args)
    File "/usr/local/lib/python2.7/dist-packages/werkzeug/test.py", line 855, in run_wsgi_app
      app_iter = app(environ, start_response)
  TypeError: 'list' object is not callable
  </code></pre>
  
  <p>How to handle the response returned from the webservice and treat it like json? </p>
  
  <p>r.text returns ["{\"username\" : \"abhi\", \"pass\" : 2087}"] which is a String object
  I dont know how r.json will format the result but I want something like :</p>
  
  <p>[{"username" : "abhi", "pass" : 2087}] which I can do using <a href="https://stackoverflow.com/questions/25391657/replace-text-from-list-of-dictionary-python/25391700#25391700">this</a> but I need to have a List not a String to do this.</p>