Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Intermediate Response headers not printed for Digest Auth #1603

Open
2 tasks done
svenXY opened this issue Oct 4, 2024 · 0 comments
Open
2 tasks done

Intermediate Response headers not printed for Digest Auth #1603

svenXY opened this issue Oct 4, 2024 · 0 comments
Labels
bug Something isn't working new Needs triage. Comments are welcome!

Comments

@svenXY
Copy link

svenXY commented Oct 4, 2024

Checklist

  • I've searched for similar issues.
  • I'm using the latest version of HTTPie.

Minimal reproduction code and steps

  1. show with curl
curl https://httpbin.io/digest-auth/auth/user/pass -i --digest --user 'user:pass'
HTTP/1.1 401 Unauthorized
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
Content-Type: application/json; charset=utf-8
Www-Authenticate: Digest qop=auth, realm="httpbin.io", algorithm=MD5, nonce=0466467c2af05e1dc3647666a0881e5f, opaque=dace930722adc22226b9b442aa01127f
Date: Fri, 04 Oct 2024 14:18:46 GMT
Content-Length: 52

HTTP/1.1 200 OK
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
Content-Type: application/json; charset=utf-8
Date: Fri, 04 Oct 2024 14:18:46 GMT
Content-Length: 43

{
  "authorized": true,
  "user": "user"
}
  1. show with http
http --verbose --print=HhBbm -A digest -a 'user:pass' --all https://httpbin.io/digest-auth/auth/user/pass
GET /digest-auth/auth/user/pass HTTP/1.1
Accept: */*
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Host: httpbin.io
User-Agent: HTTPie/3.2.3



HTTP/1.1 200 OK
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
Content-Length: 43
Content-Type: application/json; charset=utf-8
Date: Fri, 04 Oct 2024 14:17:26 GMT

{
    "authorized": true,
    "user": "user"
}

The 401 Response is missing although I have specified --all and the documentation explicitely states that "The intermediary HTTP communication include followed redirects (with --follow), the first unauthorized request when HTTP digest authentication is used (--auth=digest), etc."

See https://httpie.io/docs/cli/viewing-intermediary-requestsresponses

Current result

The 401 Response is missing

Expected result

The 401 Response should be displayed


Debug output

Please re-run the command with --debug, then copy the entire command & output and paste both below:

http --debug --print=HhBbm -A digest -a 'user:pass' --all https://httpbin.io/digest-auth/auth/user/pass
HTTPie 3.2.3
Requests 2.31.0
Pygments 2.18.0
Python 3.12.6 (main, Sep  6 2024, 19:03:47) [Clang 15.0.0 (clang-1500.3.9.4)]
/opt/homebrew/Cellar/httpie/3.2.3/libexec/bin/python
Darwin 23.6.0

<Environment {'apply_warnings_filter': <function Environment.apply_warnings_filter at 0x106774d60>,
 'args': Namespace(),
 'as_silent': <function Environment.as_silent at 0x106774c20>,
 'colors': 256,
 'config': {'default_options': []},
 'config_dir': PosixPath('/Users/Sven/.config/httpie'),
 'devnull': <property object at 0x106756f70>,
 'is_windows': False,
 'log_error': <function Environment.log_error at 0x106774cc0>,
 'program_name': 'http',
 'quiet': 0,
 'rich_console': <functools.cached_property object at 0x10674f6e0>,
 'rich_error_console': <functools.cached_property object at 0x10674f740>,
 'show_displays': True,
 'stderr': <_io.TextIOWrapper name='<stderr>' mode='w' encoding='utf-8'>,
 'stderr_isatty': True,
 'stdin': <_io.TextIOWrapper name='<stdin>' mode='r' encoding='utf-8'>,
 'stdin_encoding': 'utf-8',
 'stdin_isatty': True,
 'stdout': <_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'>,
 'stdout_encoding': 'utf-8',
 'stdout_isatty': True}>

<PluginManager {'adapters': [],
 'auth': [<class 'httpie.plugins.builtin.BasicAuthPlugin'>,
          <class 'httpie.plugins.builtin.DigestAuthPlugin'>,
          <class 'httpie.plugins.builtin.BearerAuthPlugin'>],
 'converters': [],
 'formatters': [<class 'httpie.output.formatters.headers.HeadersFormatter'>,
                <class 'httpie.output.formatters.json.JSONFormatter'>,
                <class 'httpie.output.formatters.xml.XMLFormatter'>,
                <class 'httpie.output.formatters.colors.ColorFormatter'>]}>

>>> requests.request(**{'auth': <requests.auth.HTTPDigestAuth object at 0x106b59520>,
 'data': RequestJSONDataDict(),
 'headers': <HTTPHeadersDict('User-Agent': b'HTTPie/3.2.3')>,
 'method': 'get',
 'params': <generator object MultiValueOrderedDict.items at 0x106916b60>,
 'url': 'https://httpbin.io/digest-auth/auth/user/pass'})

GET /digest-auth/auth/user/pass HTTP/1.1
Accept: */*
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Host: httpbin.io
User-Agent: HTTPie/3.2.3



HTTP/1.1 200 OK
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
Content-Length: 43
Content-Type: application/json; charset=utf-8
Date: Fri, 04 Oct 2024 14:27:01 GMT

{
    "authorized": true,
    "user": "user"
}


Elapsed time: 0.002145583s
@svenXY svenXY added bug Something isn't working new Needs triage. Comments are welcome! labels Oct 4, 2024
@github-staff github-staff deleted a comment Oct 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working new Needs triage. Comments are welcome!
Projects
None yet
Development

No branches or pull requests

3 participants
@svenXY and others