Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用python CGIHTTPServer导出d3 svg_Python_Perl_D3.js - Fatal编程技术网

使用python CGIHTTPServer导出d3 svg

使用python CGIHTTPServer导出d3 svg,python,perl,d3.js,Python,Perl,D3.js,我想将svg从d3图表导出到.svg文件,而不需要用户进行任何交互。我使用的代码基于这个伟大的示例: 但是服务器端脚本对我来说是新的,当我尝试使用内置python CGIHTTPServer运行示例代码时,我得到“错误代码501。消息:只能发布到CGI脚本。错误代码解释:501=服务器不支持此操作。” 我的问题是:PythonCGI服务器是否能够根据这个示例(下面的perl代码)处理svg文件的下载?如果没有,是否有其他简单的替代方法来测试这一点 谢谢大家!!嘉莉 download.pl如下所

我想将svg从d3图表导出到.svg文件,而不需要用户进行任何交互。我使用的代码基于这个伟大的示例:

但是服务器端脚本对我来说是新的,当我尝试使用内置python CGIHTTPServer运行示例代码时,我得到“错误代码501。消息:只能发布到CGI脚本。错误代码解释:501=服务器不支持此操作。”

我的问题是:PythonCGI服务器是否能够根据这个示例(下面的perl代码)处理svg文件的下载?如果没有,是否有其他简单的替代方法来测试这一点

谢谢大家!!嘉莉

download.pl如下所示:

use strict; 
use warnings;
use CGI qw/:standard/;
use CGI::Carp qw/fatalsToBrowser/;
use autodie qw(:all);
use File::Temp qw/tempfile/;
use File::Slurp qw/read_file write_file/;

print header(-type=>"image/svg+xml",
     -attachment=>"d3js_export_demo.svg");    
print $data;
exit(0);
**更新** 我没有使用本地python CGI服务器(CGIHTTPServer)使上述代码正常工作。我确实得到了在远程服务器上工作的同一代码的更简单版本(见下文)。这个版本在我的本地CGIHTTPServer上也不起作用,所以现在我只能使用远程服务器进行开发

#!/usr/bin/perl

use CGI qw/:standard/;

my $counter = param('num');
# input validation
my $data = param('data')
or die "Missing 'data' parameter";

print header(-type => "image/svg+xml",
-attachment => "d3demo$counter.svg");
print $data;
exit(0);