Project

General

Profile

Bug #6748

rrd_fetch_json.php returns html when user is unauthorized (causes "Error: SyntaxError: Unexpected token <")

Added by Stephen Smith about 1 year ago. Updated about 1 month ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Status_Monitoring
Target version:
Start date:
08/29/2016
Due date:
% Done:

0%

Affected Version:
2.3.2
Affected Architecture:

Description

The rrd_fetch_json.php endpoint should always return json, as it normally is being requested by js or something that intends to parse it.

When the user's session expires (or if the user is unauthorized), this endpoint returns the html for the login page, causing the js that tries to parse it to error out.

To reproduce:
1. Go to status monitoring
2. Wait for the session to expire (or log out in a separate tab)
3. Press reload on the graph
4. ???
5. "Error: SyntaxError: Unexpected token <"

The endpoint should return some kind of json formatted error message, which the js can parse and either display an appropriate message or redirect the whole page to login.

History

#1 Updated by Jim Thompson about 1 year ago

  • Assignee set to Jared Dillard
  • Target version set to 2.4.0

#2 Updated by Jared Dillard 10 months ago

  • Status changed from New to Feedback

I added a better error message in the case that JSON doesn't get returned, but a hint for the user to check that they have an active session.

#3 Updated by Jim Pingle 9 months ago

  • Status changed from Feedback to Assigned

This works nicely for Status > Monitoring, a similar error happens on the traffic graph widget and Status > Traffic graphs comes back blank (no graph, no error, nothing in the display).

Feel free to close this if those should be in a separate ticket, but it's all very similar.

#4 Updated by Kill Bill 9 months ago

SyntaxError: Unexpected token < in JSON at position 0
    at JSON.parse (<anonymous>)
    at Object.uo (d3.min.js:3)
    at XMLHttpRequest.i (d3.min.js:1)

The user is perfectly authorized, keep getting this right after login on the dashboard.

#5 Updated by Renato Botelho 2 months ago

  • Target version changed from 2.4.0 to 2.4.1

#6 Updated by Jim Pingle about 1 month ago

  • Target version changed from 2.4.1 to 2.4.2

#7 Updated by Jim Pingle about 1 month ago

  • Status changed from Assigned to Resolved
  • Target version changed from 2.4.2 to 2.4.1

This has already been fixed on 2.4.1

Also available in: Atom PDF