手记

javascript的“Uncaught SyntaxError: Unexpected token <”问题

使用Django Rest Framework + React 写一个应用,中间需要使用 jquery 读取api服务的json数据,反复出现Uncaught SyntaxError: Unexpected token <错误,花了半天时间谷歌,万能的stackoverflow.com上的答案貌似都不对题。万幸找到了这个页面,Bingo!

出现这个错误的原因是:

你链接到的JavaScript文件返回404了页面。 换句话说,浏览器正在期待JavaScript(或json),但它返回了HTML结果。

可不是吗?HTML页面第一个字符肯定是<

重新检查我的代码:

……
componentDidMount() {          const url = 'http://localhost:8000/grads/';
          $.ajax({            headers:{              'Content-Type':'application/x-www-form-urlencoded'
            },            type:"GET",            dataType:"json",            data:{},            success: function(result){              this.setState({grades:result,})
            },            error: function(xhr, status,error){              var err = eval("(" + xhr.responseText + ")");              console.log(err.Message);
            }
          });
 }
……

我没有给ajaxurl赋值!愚蠢的低级错误!马上加上url赋值语句,于是终于……又出现了另一个新的错误!好吧,至少我又跨过了一个坑。 ¯_(ツ)_/¯



作者:fanzhh
链接:https://www.jianshu.com/p/3c3e238c25c0

0人推荐
随时随地看视频
慕课网APP