Hi,

I enabled re-captcha in review board, see: 
https://reviews.melroy.org/account/register/

Register new user fails with:
POST data should be bytes, an iterable of bytes, or a file object. It 
cannot be of type str. Request information.

Are you not forgetting .encode('utf-8') somewhere?


Traceback:

```
    Internal Server Error: /account/register/

    TypeError at /account/register/
    POST data should be bytes, an iterable of bytes, or a file object. It 
cannot be of type str.

    Request Method: POST
    Request URL: https://reviews.melroy.org/account/register/
    Django Version: 1.11.29
    Python Executable: /venv/bin/python
    Python Version: 3.8.10
    Python Path: ['/site/conf', '/', '/venv/bin', '/usr/lib/python38.zip', 
'/usr/lib/python3.8', '/usr/lib/python3.8/lib-dynload', 
'/venv/lib/python3.8/site-packages']
    Server time: Sat, 26 Feb 2022 20:14:59 +0100
    Installed Applications:
    ['corsheaders',
     'django.contrib.admin',
     'django.contrib.auth',
     'django.contrib.contenttypes',
     'django.contrib.sites',
     'django.contrib.sessions',
     'django.contrib.staticfiles',
     'djblets',
     'djblets.avatars',
     'djblets.configforms',
     'djblets.datagrid',
     'djblets.extensions',
     'djblets.features',
     'djblets.feedview',
     'djblets.forms',
     'djblets.gravatars',
     'djblets.integrations',
     'djblets.log',
     'djblets.pipeline',
     'djblets.privacy',
     'djblets.recaptcha',
     'djblets.siteconfig',
     'djblets.util',
     'haystack',
     'oauth2_provider',
     'pipeline',
     'reviewboard',
     'reviewboard.accounts',
     'reviewboard.admin',
     'reviewboard.attachments',
     'reviewboard.avatars',
     'reviewboard.changedescs',
     'reviewboard.diffviewer',
     'reviewboard.extensions',
     'reviewboard.hostingsvcs',
     'reviewboard.integrations',
     'reviewboard.notifications',
     'reviewboard.oauth',
     'reviewboard.reviews',
     'reviewboard.scmtools',
     'reviewboard.site',
     'reviewboard.webapi',
     'django_evolution',
     'beanbag_licensing',
     'rbpowerpack',
     'rbpowerpack.sshdb',
     'rbintegrations']
    Installed Middleware:
    ['django.middleware.gzip.GZipMiddleware',
     'reviewboard.admin.middleware.InitReviewBoardMiddleware',
     'corsheaders.middleware.CorsMiddleware',
     'django.middleware.clickjacking.XFrameOptionsMiddleware',
     'django.middleware.common.CommonMiddleware',
     'django.middleware.http.ConditionalGetMiddleware',
     'django.middleware.locale.LocaleMiddleware',
     'django.contrib.sessions.middleware.SessionMiddleware',
     'django.contrib.auth.middleware.AuthenticationMiddleware',
     'django.contrib.messages.middleware.MessageMiddleware',
     'djblets.siteconfig.middleware.SettingsMiddleware',
     'reviewboard.admin.middleware.LoadSettingsMiddleware',
     'djblets.extensions.middleware.ExtensionsMiddleware',
     'djblets.integrations.middleware.IntegrationsMiddleware',
     'djblets.log.middleware.LoggingMiddleware',
     'reviewboard.accounts.middleware.TimezoneMiddleware',
     'reviewboard.accounts.middleware.UpdateLastLoginMiddleware',
     'reviewboard.admin.middleware.CheckUpdatesRequiredMiddleware',
     'reviewboard.accounts.middleware.X509AuthMiddleware',
     'reviewboard.site.middleware.LocalSiteMiddleware',
     'djblets.extensions.middleware.ExtensionsMiddlewareRunner',
     'reviewboard.admin.middleware.ExtraExceptionInfoMiddleware']


    Traceback:

    File 
"/venv/lib/python3.8/site-packages/django/core/handlers/exception.py" in 
inner
      41.             response = get_response(request)

    File "/venv/lib/python3.8/site-packages/django/core/handlers/base.py" 
in _legacy_get_response
      249.             response = self._get_response(request)

    File "/venv/lib/python3.8/site-packages/django/core/handlers/base.py" 
in _get_response
      187.                 response = 
self.process_exception_by_middleware(e, request)

    File "/venv/lib/python3.8/site-packages/django/core/handlers/base.py" 
in _get_response
      185.                 response = wrapped_callback(request, 
*callback_args, **callback_kwargs)

    File "/venv/lib/python3.8/site-packages/django/utils/decorators.py" in 
_wrapped_view
      149.                     response = view_func(request, *args, 
**kwargs)

    File "/venv/lib/python3.8/site-packages/reviewboard/accounts/views.py" 
in account_register
      208.         response = register(request, next_page=reverse(next_url),

    File "/venv/lib/python3.8/site-packages/django/utils/decorators.py" in 
_wrapped_view
      149.                     response = view_func(request, *args, 
**kwargs)

    File "/venv/lib/python3.8/site-packages/djblets/auth/views.py" in 
register
      93.         form.full_clean()

    File "/venv/lib/python3.8/site-packages/django/forms/forms.py" in 
full_clean
      385.         self._clean_form()

    File "/venv/lib/python3.8/site-packages/django/forms/forms.py" in 
_clean_form
      412.             cleaned_data = self.clean()

    File "/venv/lib/python3.8/site-packages/djblets/recaptcha/mixins.py" in 
clean
      77.                 resp = urlopen(

    File "/usr/lib/python3.8/urllib/request.py" in urlopen
      222.     return opener.open(url, data, timeout)

    File "/usr/lib/python3.8/urllib/request.py" in open
      522.             req = meth(req)

    File "/usr/lib/python3.8/urllib/request.py" in do_request_
      1285.                 raise TypeError(msg)

    Exception Type: TypeError at /account/register/
    Exception Value: POST data should be bytes, an iterable of bytes, or a 
file object. It cannot be of type str.
    Request information:
    USER: AnonymousUser

    GET: No GET data

    POST:
    csrfmiddlewaretoken = 'Cdat....secret.....'
    username = 'testuser'
    password1 = 'abcdefg'
    password2 = 'abcdefg'
    email = '[email protected]'
    first_name = 'test'
    last_name = 'user'
    g-recaptcha-response = '03AGdBq24rTzCVy....secret.....'

    FILES: No FILES data

    COOKIES:
    logged_out_marketing_header_id = 'eyJfcmFpbHMiO....secret.....'
    rbsessionid = 'm0po7qgsh....secret.....'

    META:
    CONTENT_LENGTH = '707'
    CONTENT_TYPE = 'application/x-www-form-urlencoded'
    CSRF_COOKIE = 'MOpGZ83P....secret.....'
    HTTP_ACCEPT = 
'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8'
    HTTP_ACCEPT_ENCODING = 'gzip, deflate, br'
    HTTP_ACCEPT_LANGUAGE = 'en-US,en;q=0.5'
    HTTP_CONNECTION = 'close'
    HTTP_COOKIE = 
'logged_out_marketing_header_id=eyJfcmFpbHMiOn....secret.....; 
csrftoken=MOpGZ....secret.....'
    HTTP_HOST = 'reviews.melroy.org'
    HTTP_ORIGIN = 'https://reviews.melroy.org'
    HTTP_REFERER = 'https://reviews.melroy.org/account/register/'
    HTTP_SEC_FETCH_DEST = 'document'
    HTTP_SEC_FETCH_MODE = 'navigate'
    HTTP_SEC_FETCH_SITE = 'same-origin'
    HTTP_SEC_FETCH_USER = '?1'
    HTTP_UPGRADE_INSECURE_REQUESTS = '1'
    HTTP_USER_AGENT = 'Mozilla/5.0 (X11; Linux x86_64; rv:97.0) 
Gecko/20100101 Firefox/97.0'
    HTTP_X_FORWARDED_FOR = '192.168.2.166'
    LOCAL_SITE = None
    PATH_INFO = '/account/register/'
    QUERY_STRING = ''
    RAW_URI = '/account/register/'
    REMOTE_ADDR = '172.18.0.1'
    REMOTE_PORT = '57868'
    REQUEST_METHOD = 'POST'
    SCRIPT_NAME = ''
    SERVER_NAME = '0.0.0.0'
    SERVER_PORT = '8080'
    SERVER_PROTOCOL = 'HTTP/1.0'
    SERVER_SOFTWARE = 'gunicorn/20.1.0'
    gunicorn.socket = <socket.socket fd=10, family=AddressFamily.AF_INET, 
type=SocketKind.SOCK_STREAM, proto=0, laddr=('172.18.0.9', 8080), 
raddr=('172.18.0.1', 57868)>
    wsgi.errors = <gunicorn.http.wsgi.WSGIErrorsWrapper object at 
0x7f527b78b160>
    wsgi.file_wrapper = ''
    wsgi.input = <gunicorn.http.body.Body object at 0x7f527b78b250>
    wsgi.input_terminated = True
    wsgi.multiprocess = True
    wsgi.multithread = True
    wsgi.run_once = False
    wsgi.url_scheme = 'https'
    wsgi.version = '(1, 0)'

    [....]
```

-- 
Supercharge your Review Board with Power Pack: 
https://www.reviewboard.org/powerpack/
Want us to host Review Board for you? Check out RBCommons: 
https://rbcommons.com/
Happy user? Let us know! https://www.reviewboard.org/users/
--- 
You received this message because you are subscribed to the Google Groups 
"Review Board Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/reviewboard/df891d8b-043a-4663-a5d5-5add6f21a224n%40googlegroups.com.

Reply via email to