JSON问题似乎应该起作用

时间:2018-07-23 17:12:54

标签: javascript json reactjs

说我在位置0的JSON中有一个意外的令牌<。任何想法出了什么问题?可能很简单,但我仍在学习。

> 29 |   .then(response => response.json())
  30 |   .then(user => {
  31 |     if (user.id) {
  32 |       this.props.loadUser(user)
         this.props.onRouteChange('home');
        }
       })
      }

2 个答案:

答案 0 :(得分:0)

当服务器返回错误时,我曾经得到这个。例如,它不返回json,而是返回一些html标记:

<!doctype html>

该意外的符号可能是html标签的左括号。

答案 1 :(得分:0)

该响应不是JSON响应,并且很可能是HTML错误页面,其错误代码范围为400或500。

似乎您正在使用访存,因此您可以将该函数更改为

.then(response => response.ok && response.json())

这将在假设它为JSON之前检查它是否是一个好的结果,但是您可能应该添加.catch()来捕获这些时间,因为这不是您期望的响应。

您很可能会在“网络”标签中查看该错误,或​​者在捕获中执行以下操作:

.catch(response => response.text().then(errText => console.log(errText))