MapFish 是一套完善而灵活的框架,用于建立内容丰富的网页地图服务。它不仅能保证高效的开发,也能提供高质量的服务产品。
本文包含了:
在桌面点击 MapFish 图标即可与 Firefox 开启本地示例服务。这是一个本地 Apache 运行的 mod_wsgi 服务(http://localhost/mapfishsample/osgeolive/wsgi/)。
示例服务包含了检索、编辑、打印等功能。若希望查看 MapFish REST 协议的实际内容,请在 Firebug 查看 requests/responses 数据。
请从官网下载 MapFish 安装脚本并运行:
$ wget http://www.mapfish.org/downloads/go-mapfish-framework-2.2.py
$ python go-mapfish-framework-2.2.py --no-site-packages venv
以上命令创建了一个名为 venv 的 Python 虚拟环境,下载了 MapFish 及其依赖组件,并安装至建立的虚拟环境中。
以下激活建立的虚拟环境并检查 MapFish 是否已经正确安装:
$ source venv/bin/activate
(venv) $ paster create --list-templates
若安装正常,应当出现以下输出:
Available templates:
basic_package: A basic setuptools-enabled package
mapfish: MapFish application template
mapfish_client: MapFish client plugin template
paste_deploy: A web application deployed through paste.deploy
pylons: Pylons application template
pylons_minimal: Pylons minimal application template
安装完成后,请参考后续部分创建服务。
完成前述步骤后,创建一个名为 MyMapFishApp 的服务:
(venv) $ paster create -t mapfish MyMapFishApp sqlalchemy=true
安装 JavaScript 函数库:
(venv) $ paster create --no-interactive -t mapfish_client MyMapFishApp
在 MyMapFishApp 目录将创建一个应用。
使用以下命令可以启动应用:
(venv) $ cd MyMapFishApp
(venv) $ paster serve development.ini
访问 http://localhost:5000 。创建的新应用应该包含两个 OSM 图层 ,一个工具栏和一个图层面板。
MapFish 框架通过创建基于 REST 网页应用可以实现地理要素创建、读取、编辑、更新、删除等多种功能。请访问 http://mapfish.org/doc/2.2/quickstart.html 了解具体的配置方法。在 http://mapfish.org 可以获得更多有关该项目的信息。