Skip to content

Long waiting time after receiving 204 No Content response #476

@nothrem

Description

@nothrem

When server returns response "204 No Content" and does not return any body, ARC waits 60 seconds for the body (message "Headers received" is displayed), then timeouts and displays the empty response.

Expected outcome

After receiving 204, no body is expected and result should be displayed immediately.

e.g. (204) No Content, Time: 300ms, Size: 0 Bytes
(Similar result is displayed in Postman immediately; Postman actually includes size of headers in the "Size:" field. )

Chrome and Firefox display empty tab immediately after nagigating to this URL. Not tested in other clients.

Actual outcome

Waiting 60 seconds, then result. Waiting time is included in result time. This is very confusing when using ARC to debug API and speed of its response (to workaround possible delays in other clients).

e.g. (204) No Content, Time: 60300ms, Size: 0 Bytes
(This result is displayed in ARC after 1 minute)

Versions

App: 17.0.9
Platform: win32
Electron: 17.1.0
Chrome: 98.0.4758.102
V8: 9.8.177.11-electron.0
Node: 16.13.0

Steps to reproduce

  1. Prepare server script that just returns 204 header e.g. <?php http_response_code(204); die();. Prepared demo page: http://demo.nothrem.cz/empty.php
  2. Send GET request to the server using ARC
  3. Wait for response

Workaround:

Including header Connection: Close will fix this issue since the server will include the same header in response and will end the connection.

Note 1:

HTTP allows servers to include body in 204 response. ARC may wait for any potencial body, but it should be obvious, that request is considered finished as soon as the 204 header is received

Note 2:

Strange is that ARC is waiting 60 seconds even when server returns header e.g. Keep-Alive: timeout=30 which should instruct the client to close the connection after 30 seconds. (And default request timeout set in ARC is 90 seconds so it also does not match this case.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions