2015-06-16 72 views
2

我感兴趣的运行graphgist本地,对此这里有一个脚本:运行graphgists本地失败

https://gist.github.com/jexp/70296ce410ff431ddbef

我能够安装的模块和运行两个任务,但的最后一行脚本:

open http://localhost:8000/?http%3A%2F%2Flocalhost%3A8000%2Fgists%2Fmy-graph-use-case.adoc 

产生一个错误:未找到并试图打开在评论中的链接:

http://localhost:8000/gists/my-graph-use-case.adoc

导致我的浏览器下载我没有关联应用程序的文件。有没有人做过这项工作,如果有的话,如何?

回答

2

根据@MichaelHunger,问题是Python的SimpleHTTPServer中的默认行为是这样的:尾部的斜杠(/)被添加到URL的末尾,搞乱了请求。

根据@PratikMandrekar的说法,在下面的文章中,问题是,因为它在脚本中的url没有明确指定文件名,所以强制服务器重定向到默认值。见:

Why does SimpleHTTPServer redirect to ?querystring/ when I request ?querystring?

这样一个小实验,我发现后,这个工作:

http://localhost:8000/index.html?http%3A%2F%2Flocalhost%3A8000%2Fgists%2Fmy-graph-use-case.adoc

公告称,冒号,斜线等在内的URL必须编码这个工作

+0

啊对,你说得对,现在我记得了。我发现index.html解决方案也忘了将其添加到脚本中,但分散注意力。谨慎发送公关? –

+1

Github不幸的是,Gist不支持pull请求。我可以叉,但不能要求拉。 – ekkis

0

simple-http-client中存在一个bug /默认行为,在查询参数打破我们的应用程序之后,它会添加斜杠,我必须找到更好的替换或修复它。

也许我也可以将rabbithole项目更改为服务器graphgist文件本身,以便它自成一体。

+0

啊。是的,我注意到额外的斜线被添加并认为是错误的。我认为更好的解决方案是修复simple-http-client,这样你就不会在rabbithole中重复工作。如果我可以从IIS或其他Web服务器提供页面而不是使用simple-http-client,那么也许可以解决这个问题呢? – ekkis

+0

迈克尔,这似乎解决了这个问题:http://stackoverflow.com/questions/12953542/why-does-simplehttpserver-redirect-to-querystring-when-i-request-querystring – ekkis

+0

阅读Pratik在上一期的答案我尝试了'http:// localhost:8000/index.html?http:// localhost:8000/gists/my-graph-use-case.adoc'这似乎工作,服务器不重定向并追加一个斜杠,但是,我仍然得到*错误:找不到文件*。同样,'http:// localhost:8000/index.html /?http:// localhost:8000/gists/my-graph-use-case.adoc'也会失败,并且出现相同的错误,但它是一个不同的页面是一个Neo4j Graphgist页面,第二个是一个普通的错误页面) – ekkis

相关问题