Javascript 瓶子web服务器:如何路由到文本文件

Javascript 瓶子web服务器:如何路由到文本文件,javascript,python,dynamic,web,bottle,Javascript,Python,Dynamic,Web,Bottle,我正在用瓶子写一个网络应用程序。我需要将某些文本文件传递给javascript函数,该函数处理该文件并在web上显示图像 我想能够使一个可变目录ie路由 ./database/*/CONTCAR.xyz 这样我就可以调用表单./database的url/6Ni@32Ag_npo/CONTCAR.xyz并返回CONTCAR.xyz,其中“6Ni@32Ag_npo“每个URL都将不同 这是我的服务器中的内容 import bottle as b @b.route('/database/<fol

我正在用瓶子写一个网络应用程序。我需要将某些文本文件传递给javascript函数,该函数处理该文件并在web上显示图像

我想能够使一个可变目录ie路由

./database/*/CONTCAR.xyz

这样我就可以调用表单./database的url/6Ni@32Ag_npo/CONTCAR.xyz并返回CONTCAR.xyz,其中“6Ni@32Ag_npo“每个URL都将不同

这是我的服务器中的内容

import bottle as b
@b.route('/database/<folder>/CONTCAR.xyz')
  def server_static(filename):
     return b.static_file( "CONTCAR.xyz" , root='./database/<folder>')
将瓶子作为b导入
@b、 路由('/database//CONTCAR.xyz')
def服务器_静态(文件名):
返回b.static_文件(“CONTCAR.xyz”,root=”./database/)
在我的javascript中,我尝试按如下方式调用url:

<canvas class='xyz' url='/database/6Ni@32Ag_npo/CONTCAR.xyz' filetype='xyz'></canvas>

xyz类是一个允许我处理此CONTCAR文件的类

我得到以下错误:

TypeError:服务器\u static()获得意外的关键字参数“folder”
本地主机--[19/Jan/2014 13:10:46]“获取/数据库/6Ni@32Ag_npo/CONTCAR.xyz?uid=1390158646852 HTTP/1.1“500 794

您正在路由路径中使用名称
文件夹
,但
文件名
作为唯一参数名称。幸运的是,修复很简单:只需在两个地方使用相同的名称。(并更正您在
静态文件
根目录
参数中使用的
文件夹

@b.route('/database/<folder>/CONTCAR.xyz')
  def server_static(folder):
     return b.static_file('CONTCAR.xyz', root='./database/{}'.format(folder))
@b.route('/database//CONTCAR.xyz')
def服务器_静态(文件夹):
返回b.static_文件('CONTCAR.xyz',root='./数据库/{}'。格式(文件夹))

对于两个级别的文件夹,您可以执行以下操作:

@b.route('/database/<folder1>/<folder2>/CONTCAR.xyz')
  def server_static(folder1, folder2):
     return b.static_file('CONTCAR.xyz', root='./database/{}/{}'.format(folder1, folder2))
@b.route('/database///CONTCAR.xyz')
def服务器_静态(文件夹1、文件夹2):
返回b.static_文件('CONTCAR.xyz',root='./数据库/{}/{}'。格式(folder1,folder2))

太好了!非常感谢。这解决了问题。还有一个快速问题。
b.route(/database///CONTCAR.xyz
)的语法是什么?