Javascript Highcharts:使用JSON获取空白图表
我试图用JSON显示Highcharts。首先,我尝试让它与本地JSON文件一起工作。稍后,它将从django数据库获取数据 我的问题是:我得到了一个空白页 从本教程中: . 我编写了以下代码:Javascript Highcharts:使用JSON获取空白图表,javascript,jquery,json,charts,highcharts,Javascript,Jquery,Json,Charts,Highcharts,我试图用JSON显示Highcharts。首先,我尝试让它与本地JSON文件一起工作。稍后,它将从django数据库获取数据 我的问题是:我得到了一个空白页 从本教程中: . 我编写了以下代码: <!DOCTYPE html> <html> <head> <script src="http://code.highcharts.com/highcharts.js"></script> <script src="ht
<!DOCTYPE html>
<html>
<head>
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script>
</head>
<body>
<div id="container" style="width:100%; height:400px;"></div>
<script type='text/javascript'>
$(document).ready(function() {
var options = {
chart: {
renderTo: 'container',
type: 'spline'
},
series: [{}]
};
$.getJSON('data.json', function(data) {
options.series[0].data = data;
var chart = new Highcharts.Chart(options);
});
});
</script>
</body>
</html>
我看到很多人都有不同的解决方案。所以我写下这篇文章,希望它能在将来帮助人们 我所遇到的一个问题是,我花了太多时间寻找一个可行的解决方案,而没有解决问题。老实说,我并不知道这件事 打开浏览器控制台并读取错误消息 要解决这些问题: 铬亚胺: XMLHttpRequest无法加载127.0.0.1:8000/用户。请求的资源上不存在“Access Control Allow Origin”标头。因此,不允许访问源“null” Firefox: 已阻止跨源请求:同源策略不允许读取127.0.0.1:8000/用户的远程资源。(原因:缺少CORS标头“访问控制允许原点”) 我做了以下工作: 为避免交叉冲突,请安装Django CORS标头
pip install django-cors-headers
将Corsheader添加到我的REST框架中的my settings.py
INSTALLED_APPS = (
...
'corsheaders',
...
)
...
MIDDLEWARE = [ # Or MIDDLEWARE_CLASSES on Django < 1.10
...
'corsheaders.middleware.CorsMiddleware',
'django.middleware.common.CommonMiddleware',
...
]
我看到很多人都有不同的解决方案。所以我写下这篇文章,希望它能在将来帮助人们 我所遇到的一个问题是,我花了太多时间寻找一个可行的解决方案,而没有解决问题。老实说,我并不知道这件事 打开浏览器控制台并读取错误消息 要解决这些问题: 铬亚胺: XMLHttpRequest无法加载127.0.0.1:8000/用户。请求的资源上不存在“Access Control Allow Origin”标头。因此,不允许访问源“null” Firefox: 已阻止跨源请求:同源策略不允许读取127.0.0.1:8000/用户的远程资源。(原因:缺少CORS标头“访问控制允许原点”) 我做了以下工作: 为避免交叉冲突,请安装Django CORS标头
pip install django-cors-headers
将Corsheader添加到我的REST框架中的my settings.py
INSTALLED_APPS = (
...
'corsheaders',
...
)
...
MIDDLEWARE = [ # Or MIDDLEWARE_CLASSES on Django < 1.10
...
'corsheaders.middleware.CorsMiddleware',
'django.middleware.common.CommonMiddleware',
...
]
控制台中的任何javascript错误或“网络”选项卡上状态>=400的任何请求?是否可以添加data.json?看起来highcharts.js包含了两次。您应该只包含一次。将
控制台.log(data)
添加到您的选项.series[0]。data=data
之前。控制台中出现了什么?我添加了JSON文件的内容。我刚刚在firefox中启动了这个网站,以便更好地调试firebug,它就在那里工作了。在chrome中,它表示:XMLHttpRequest无法加载file:///home/lunex/Schreibtisch/db/Charts/data.json. 跨源请求仅支持协议方案:http、data、chrome、chrome extension、https、chrome-extension-resource。控制台中有任何javascript错误或网络选项卡上状态>=400的任何请求吗?是否可以添加数据。json?看起来您包含了两次highcharts.js。您应该只包含一次。将控制台.log(data)
添加到您的选项.series[0]。data=data
之前。控制台中出现了什么?我添加了JSON文件的内容。我刚刚在firefox中启动了这个网站,以便更好地调试firebug,它就在那里工作了。在chrome中,它表示:XMLHttpRequest无法加载file:///home/lunex/Schreibtisch/db/Charts/data.json. 跨源请求仅支持协议方案:http、数据、chrome、chrome扩展、https、chrome扩展资源。