mirror of
https://github.com/spotipy-dev/spotipy.git
synced 2026-04-26 16:15:51 +03:00
[GH-ISSUE #939] TypeError: 'dict' object is not callable in 'example/apps.py #564
Labels
No labels
api-bug
bug
dependencies
documentation
duplicate
enhancement
external-ide
headless-mode
implicit-grant-flow
invalid
missing-endpoint
pr-welcome
private-api
pull-request
question
spotipy3
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/spotipy#564
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @sitongye on GitHub (Feb 6, 2023).
Original GitHub issue: https://github.com/spotipy-dev/spotipy/issues/939
Describe the bug
TypeError: 'dict' object is not callable while running 'example/apps.py'
Your code
app.py
Expected behavior
should return dict like response
Output
Traceback (most recent call last)
File "/lib/python3.9/site-packages/flask/app.py", line 1974, in make_response
rv = self.response_class.force_type(rv, request.environ)
File "/lib/python3.9/site-packages/werkzeug/wrappers/base_response.py", line 269, in force_type
response = BaseResponse(*_run_wsgi_app(response, environ))
File "lib/python3.9/site-packages/werkzeug/wrappers/base_response.py", line 26, in _run_wsgi_app
return _run_wsgi_app(*args)
File "lib/python3.9/site-packages/werkzeug/test.py", line 1119, in run_wsgi_app
if exc_info is not None:
reraise(*exc_info)
response[:] = [status, headers]
return buffer.append
During handling of the above exception, another exception occurred:
File "lib/python3.9/site-packages/flask/app.py", line 2309, in call
return self.wsgi_app(environ, start_response)
File "lib/python3.9/site-packages/flask/app.py", line 2295, in wsgi_app
response = self.handle_exception(e)
File "python3.9/site-packages/flask/app.py", line 1741, in handle_exception
reraise(exc_type, exc_value, tb)
File "lib/python3.9/site-packages/flask/_compat.py", line 35, in reraise
raise value
File "/lib/python3.9/site-packages/flask/app.py", line 2292, in wsgi_app
response = self.full_dispatch_request()
File "lib/python3.9/site-packages/flask/app.py", line 1816, in full_dispatch_request
return self.finalize_request(rv)
File "lib/python3.9/site-packages/flask/app.py", line 1831, in finalize_request
response = self.make_response(rv)
File "lib/python3.9/site-packages/flask/app.py", line 1982, in make_response
reraise(TypeError, new_error, sys.exc_info()[2])
File "lib/python3.9/site-packages/flask/_compat.py", line 34, in reraise
raise value.with_traceback(tb)
File "lib/python3.9/site-packages/flask/app.py", line 1974, in make_response
rv = self.response_class.force_type(rv, request.environ)
File "lib/python3.9/site-packages/werkzeug/wrappers/base_response.py", line 269, in force_type
response = BaseResponse(*_run_wsgi_app(response, environ))
File "lib/python3.9/site-packages/werkzeug/wrappers/base_response.py", line 26, in _run_wsgi_app
return _run_wsgi_app(*args)
File "lib/python3.9/site-packages/werkzeug/test.py", line 1119, in run_wsgi_app
app_rv = app(environ, start_response)
TypeError: 'dict' object is not callable
The view function did not return a valid response. The return type must be a string, tuple, Response instance, or WSGI callable, but it was a dict.
Environment:
async-timeout==4.0.2
cachelib==0.10.2
certifi==2019.3.9
chardet==3.0.4
charset-normalizer==3.0.1
Click==7.0
Flask==1.0.2Flask-Session==0.4.0
idna==2.8
itsdangerous==1.1.0
Jinja2==2.11.3
MarkupSafe==2.0.1
python-dotenv==0.21.1
redis==4.4.2
requests==2.28.2
six==1.16.0
spotipy==2.22.1
urllib3==1.26.14
Werkzeug==0.15.5
Additional context
soltuion:
''
from flask import jsonify
''
"jsonify" whenever a dict is returned
for example:
``
@app.route('/playlists')
def playlists():
cache_handler = spotipy.cache_handler.FlaskSessionCacheHandler(session)
auth_manager = spotipy.oauth2.SpotifyOAuth(cache_handler=cache_handler)
if not auth_manager.validate_token(cache_handler.get_cached_token()):
return redirect('/')
''