如何使用javascript跟踪符号链接?
我正在从目录如何使用javascript跟踪符号链接?,javascript,d3.js,simplehttpserver,Javascript,D3.js,Simplehttpserver,我正在从目录my_server运行python-msimplehttpserver 8888,我想访问index.html文件,该文件包含读取my_file.csv的javascript命令,但该文件不在my_server或其子文件夹中 path/to/my_server $ ln -s /some_path/to/my_file.csv symbolic_link_to_my_file.csv path/to/my_server $ python -m SimpleHTTPServer 888
my_server
运行python-msimplehttpserver 8888
,我想访问index.html
文件,该文件包含读取my_file.csv
的javascript命令,但该文件不在my_server
或其子文件夹中
path/to/my_server $ ln -s /some_path/to/my_file.csv symbolic_link_to_my_file.csv
path/to/my_server $ python -m SimpleHTTPServer 8888
如果我在my_server
中创建一个指向my_file.csv
的符号链接,然后像这样访问它:
http://localhost:8888/my_server/index.html?file=symbolic_link_to_my_file.csv
是否有任何方法可以通过index.html
中的javascript跟随这个符号链接来读取my_file.csv
<script>
//read URL params
...
d3.csv(file, ...)
</script>
//读取URL参数
...
d3.csv(文件,…)
在浏览器中运行的JavaScript根本无法访问文件系统(就这一点而言,浏览器中的任何其他内容也无法访问)
客户端只看到URI
Web服务器负责为URI提供适当的资源
您需要编辑/配置SimpleHTTPServer以遵循符号链接和/或确保运行服务器的用户有权访问链接另一端的文件。读取
d3.csv
命令上的文档时,需要向其发送完整URL
d3.csv(file
命令)中file
的值是多少?如果发送类似“filename.csv”的内容,它可能只是将其附加到当前URL或当前目录中。您可能希望发送一个完整URL,如下所示(开头有斜线):
/folder/myfile.csv
如果您在浏览器中键入此URL,它是否会为您提供CSV文件?
http://localhost:8888/my_server/index.html?file=symbolic_link_to_my_file.csv
如果是这样的话,
文件
的内容可能应该是/my_server/index.html?file=symbolic\u link\u to_my_file.csv
SimpleHTTPServer已经遵循符号链接,但是请求是获取index.html,而不是my_file.csv。我想我可以使用ajaxNo请求服务器提供该文件,请求是/my_server/index.html?file=symbolic\u link\u to\u my\u file.csv
。服务器可能会将其解析为“index.html文件的内容”,但您可以更改它。您也可以编写JavaScript(可能使用XMLHttpRequest对象)向基于位置
对象中的数据计算出的其他URL发出第二个请求。