本地开发服务器搭建
C# + Windows平台:IISExpress
iisexpress /? 帮助很简明详细
iisexpress /path:c:\myapp\ /port:80
PHP 环境(跨平台)
php -help // 获得帮助
php -S localhost:8080 // 在当前目录中启动web服务器
php -S localhost:8888 -t d:/StaticWeb/dist/ // 指定目录与端口
NodeJS 环境
// http-server
npm install http-server -g 全局安装
http-server 在当前目录启动web
http-server -c-1 不需要缓存(马上体现文件改动)
http-server --port 8000 -c10 在端口8000监听web服务,文件缓存时间为10秒
npx http-server 一次性启动Web服务,在当前目录提供Web服务,好处是它提供了目录浏览
Python环境
// Cmd 下进入本地网站目录
python -m http.server 8000 // python 3.0, Ctrl+C 退出服务
python -m SimpleHTTPServer // python 2.0 启动后会将当前目前作为网站,启动服务
API Mock
json-server (基于NodeJs的跨平台方案)
可以直接把一个json文件托管成一个具备全RESTful风格的API,并支持跨域、jsonp、路由订制、数据快照保存等功能的 web 服务器。
相关文档: https://github.com/typicode/json-server
这是官方开源地址,最好的学习资料:
npm install -g json-server // 全局安装 json-server
// 创建本地目录,cd 进入 ( D:\HelloBDWeb )
// 准备一个json文件,模拟后台数据库,可以命名为 db.json
// 准备一个 config 文件,json格式
// 准备一个route.json 文件做路由(内容可暂时为空,逐步添加)
json-server -c config.json db.json \\ 启动 Mock API 服务
// db.json
{
"products":[{...},{...}],
"species":[{...},{...}]
}
// config.json
{
"port": 53000, // 端口
"watch": true, // 监视文件变化自动刷新
"read-only": false, // 允许写入
"no-cors": false, // 允许跨域调用
"no-gzip": false, // 允许gzip压缩
"routes":"route.json"
}
// route.json 完整的路由设置案例
{
"/API/naturenoteServ.ashx?a=getproduct&id=:id": "/products?id=:id",
"/API/naturenoteServ.php?a=getsplist&pid=:id": "/splist?productId=:id",
"/API/naturenoteServ.ashx?a=getsp&name=:name": "/species?name_zh=:name",
"/API/naturenoteServ.ashx?a=posts&pid=:pid": "/posts?productId=:pid",
"/API/naturenoteServ.ashx?a=getbyname&name=:name":"/app?Name=:name",
"/API/userole.ashx?a=checklogin":"/users?username=chinaontology"
}
roapi (基于Python的跨平台方案)
能为静态数据(csv、json、sqlite、excel)快速的生成可读的开放 API,其中 API 的查询形式支持种类非常多,比如 rest API、SQL 查询、GraphQL。
Overview - ROAPI Documentation :https://roapi.github.io/docs/index.html
测试笔记:
pip install roapi-http // 安装
cd D:\BaiduNetdiskWorkspace\华东项目验收
roapi-http --table "dnas=./DNA1110.csv"
http://localhost:8080/api/tables/dnas?limit=30 // 显示前三十条记录