HTTP Request Node: JSON response body shows empty string despite valid JSON content #17784

Closed
opened 2026-02-21 19:39:44 -05:00 by yindo · 0 comments
Owner

Originally created by @leslie1612 on GitHub (Sep 19, 2025).

Self Checks

  • I have read the Contributing Guide and Language Policy.
  • This is only for bug report, if you would like to ask a question, please head to Discussions.
  • I have searched for existing issues search for existing issues, including closed ones.
  • I confirm that I am using English to submit this report, otherwise it will be closed.
  • 【中文用户 & Non English User】请使用英语提交,否则会被关闭 :)
  • Please do not modify this template :) and fill in all the required fields.

Dify version

1.7.2

Cloud or Self Hosted

Self Hosted (Docker)

Steps to reproduce

  1. Create a workflow with an HTTP Request node
  2. Configure the node to call an API that returns JSON error responses (e.g., Redmine API, GitLab API)
  3. Make a request that triggers an error response with status code 422 or 404
  4. Observe the node output in the workflow execution results

✔️ Expected Behavior

The HTTP node output should display the JSON response content in the body field:

{  
  "status_code": 422,  
  "body": "{\"errors\":[\"Due date must be greater than start date\"]}",  
  "headers": {
    "server": "nginx",
    "content-type": "application/json; charset=utf-8",
    "content-length": "62",
    "connection": "keep-alive",
    "status": "422 Unprocessable Entity",
    "cache-control": "no-cache",
    "x-xss-protection": "1; mode=block"
  },
  "files": []  
}

Actual Behavior

The HTTP node output shows an empty body field despite the response containing valid JSON content:

{
  "status_code": 422,
  "body": "",
  "headers": {
    "server": "nginx",
    "content-type": "application/json; charset=utf-8",
    "content-length": "62",
    "connection": "keep-alive",
    "status": "422 Unprocessable Entity",
    "cache-control": "no-cache",
    "x-xss-protection": "1; mode=block"
  },
  "files": []
}

The response headers confirm that JSON content should be present (content-type: application/json and content-length: 62), but the body field remains empty.

Originally created by @leslie1612 on GitHub (Sep 19, 2025). ### Self Checks - [x] I have read the [Contributing Guide](https://github.com/langgenius/dify/blob/main/CONTRIBUTING.md) and [Language Policy](https://github.com/langgenius/dify/issues/1542). - [x] This is only for bug report, if you would like to ask a question, please head to [Discussions](https://github.com/langgenius/dify/discussions/categories/general). - [x] I have searched for existing issues [search for existing issues](https://github.com/langgenius/dify/issues), including closed ones. - [x] I confirm that I am using English to submit this report, otherwise it will be closed. - [x] 【中文用户 & Non English User】请使用英语提交,否则会被关闭 :) - [x] Please do not modify this template :) and fill in all the required fields. ### Dify version 1.7.2 ### Cloud or Self Hosted Self Hosted (Docker) ### Steps to reproduce 1. Create a workflow with an HTTP Request node 2. Configure the node to call an API that returns JSON error responses (e.g., Redmine API, GitLab API) 3. Make a request that triggers an error response with status code 422 or 404 4. Observe the node output in the workflow execution results ### ✔️ Expected Behavior The HTTP node output should display the JSON response content in the body field: ``` { "status_code": 422, "body": "{\"errors\":[\"Due date must be greater than start date\"]}", "headers": { "server": "nginx", "content-type": "application/json; charset=utf-8", "content-length": "62", "connection": "keep-alive", "status": "422 Unprocessable Entity", "cache-control": "no-cache", "x-xss-protection": "1; mode=block" }, "files": [] } ``` ### ❌ Actual Behavior The HTTP node output shows an empty body field despite the response containing valid JSON content: ``` { "status_code": 422, "body": "", "headers": { "server": "nginx", "content-type": "application/json; charset=utf-8", "content-length": "62", "connection": "keep-alive", "status": "422 Unprocessable Entity", "cache-control": "no-cache", "x-xss-protection": "1; mode=block" }, "files": [] } ``` The response headers confirm that JSON content should be present (content-type: application/json and content-length: 62), but the body field remains empty.
yindo added the 🐞 bug label 2026-02-21 19:39:44 -05:00
yindo closed this issue 2026-02-21 19:39:44 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify#17784