JavaScript Q&A Logo
JavaScript Q&A Part of the Q&A Topic Learning Network
Real Questions. Clear Answers.
Ask any question about JavaScript here... and get an instant response.
Q&A Balloon Q&A Logo
Post this Question & Answer:

How can I handle errors gracefully with fetch when the API returns a non-JSON response?

Asked on Nov 07, 2025

Answer

When using the Fetch API, you can handle errors gracefully by checking the response status and content type before attempting to parse the response as JSON. This ensures that you handle non-JSON responses appropriately.
<!-- BEGIN COPY / PASTE -->
        fetch('https://api.example.com/data')
            .then(response => {
                if (!response.ok) {
                    throw new Error('Network response was not ok');
                }
                const contentType = response.headers.get('content-type');
                if (contentType && contentType.includes('application/json')) {
                    return response.json();
                } else {
                    throw new Error('Received non-JSON response');
                }
            })
            .then(data => {
                console.log('Data:', data);
            })
            .catch(error => {
                console.error('Fetch error:', error);
            });
        <!-- END COPY / PASTE -->
Additional Comment:
  • The "fetch" function initiates a network request to the specified URL.
  • Check "response.ok" to ensure the HTTP status code is in the 200-299 range.
  • Verify the "content-type" header to confirm the response is JSON before parsing.
  • Use "catch" to handle any errors that occur during the fetch or parsing process.
✅ Answered with JavaScript best practices.
← Back to All Questions

Q&A Network
Real Questions. Clear Answers.
JavaScript
Ask Questions / Get Answers about JavaScript!
AI Writing
Ask Questions / Get Answers about AI Writing!
Networking
Ask Questions / Get Answers about Networking!
AI Video
Ask Questions / Get Answers about AI Video!
Web Languages
Ask Questions / Get Answers about Web Languages!
Robotics
Ask Questions / Get Answers about Robotics!
WordPress
Ask Questions / Get Answers about WordPress!
Sound Design
Ask Questions / Get Answers about Sound Design!
AI Design
Ask Questions / Get Answers about AI Design!
AI Images
Ask Questions / Get Answers about AI Images!
Cloud Computing
Ask Questions / Get Answers about Cloud Computing!
Photography
Ask Questions / Get Answers about Photography!
Chatbots
Ask Questions / Get Answers about Chatbots!
Nursing
Ask Questions / Get Answers about Nursing!
Motion Graphics
Ask Questions / Get Answers about Motion Graphics!
Analytics
Ask Questions / Get Answers about Analytics!
AI Education
Ask Questions / Get Answers about AI Education!
AI Ethics
Ask Questions / Get Answers about AI Ethics!
SEO
Ask Questions / Get Answers about SEO!
AI Coding
Ask Questions / Get Answers about AI Coding!
AI Marketing
Ask Questions / Get Answers about AI Marketing!
Data Science
Ask Questions / Get Answers about Data Science!
DevOps
Ask Questions / Get Answers about DevOps!
Creative Writing
Ask Questions / Get Answers about Creative Writing!
Performance
Ask Questions / Get Answers about Web Vitals!
Monetization
Ask Questions / Get Answers about Ad & Monetization!
Cybersecurity
Ask Questions / Get Answers about Cybersecurity!
Graphic Design
Ask Questions / Get Answers about Graphic Design!
Podcasting
Ask Questions / Get Answers about Podcasting!
HTML
Ask Questions / Get Answers about HTML!
Social Media Psychology
Ask Questions / Get Answers about Social Media Psychology!
Video Editing
Ask Questions / Get Answers about Video Editing!
MobileDev
Ask Questions / Get Answers about Mobile Developement!
AI Business
Ask Questions / Get Answers about AI Business!
Business Finance
Ask Questions / Get Answers about Business Finance!
AI Audio
Ask Questions / Get Answers about AI Audio!
Digital Burnout
Ask Questions / Get Answers about Digital Burnout!
Film Production
Ask Questions / Get Answers about Film Production!
Web Development
Ask Questions / Get Answers about Web Development!
Security
Ask Questions / Get Answers about Website Security!
3D Design
Ask Questions / Get Answers about 3D Design!
CSS
Ask Questions / Get Answers about CSS!
Tailwind
Ask Questions / Get Answers about Tailwind!
IoT
Ask Questions / Get Answers about IoT!
Illustration
Ask Questions / Get Answers about Illustration!
Bootstrap
Ask Questions / Get Answers about Bootstrap!
UI/UX Design
Ask Questions / Get Answers about UI/UX Design!
Animation
Ask Questions / Get Answers about Animation!
VR & AR
Ask Questions / Get Answers about VR & AR!
Quantum
Ask Questions / Get Answers about Quantum Computing!
Web Hosting
Ask Questions / Get Answers about Hosting!
AI
Ask Questions / Get Answers about AI!