Uncaught SyntaxError:意外的令牌:从javascript加载json时

时间:2017-03-20 10:58:11

标签: javascript php json

我知道有很多像这样的问题,但我真的无法找到问题所在。

我需要使用原生Javascript从外部网址获取JSON。

我已经这样做了:

loadUserData('http://ip-api.com/json', 'setUserData');

function loadUserData(url, callback)
{
    var s = document.createElement('script');
    s.src = url + '?callback=' + callback;
    document.body.appendChild(s);
}

当我收到这个网址时,一切正常,回调被调用,没有错误,每个人都很开心。

但是,当我尝试从我的虚拟主机获取json时,我在这个json的开头就出现了Javascript错误

  

意外的令牌:

我主机上的json包含大对象,用PHP json_encode编码,如

$data = new StdClass;
$data->id = $id;
$data->admin = 1;
$data->user = User::find(Auth::user()->id);
$data->websites = [1, 2, 3];
Storage::put('mysjon', json_encode($data));

最有趣的部分是我尝试从ip-api复制字符串并将其放在我的主机上(没有任何额外的编码,就像字符串一样,所以在浏览器中它看起来就像ip-api上的原始字符串网站),我也有同样的错误。如何从一个URL轻松加载同一个字符串并从另一个URL加载时导致js错误?

非常感谢任何可能的帮助!

0 个答案:

没有答案