web.py解释

一个经典的web.py模块如下:

在开始你的web.py程序之前,打开一个文本文件(文件名为app.py)输入:

import web
这条语句会导入web.py模块。

现在我们需要把我们的URL结构告诉web.py。让我从下面这个简单的例子开始:

urls = (
  '/', 'index'
)
第一部分是匹配URL的 正则表达式 ,像 / /help/faq /item/(\d+) 等( \d+ 将匹配数字)。圆括号表示捕捉对应的数据以便后面使用。第二部分是接受请求的类名称,像 index view welcomes.hello  ( welcomes 模块的 hello 类),或者 get_\1 \1  会被正则表达式捕捉到的内容替换,剩下来捕捉的的内容将被传递到你的函数中去。

GET是我们都熟悉的。它用于请求网页文本。当你在浏览器输入harvard.edu,它会直接访问Harvard的web服务器,去GET /。 第二个最有名的是POST,它经常被用在提交form,比如请求买什么东西。每当提交一个去做什么事情(像使用信用卡处理一笔交易)的请求时,你可以使用POST。这是关键,因为GET的URL可以被搜索引擎索引,并通过搜索引擎访问。虽然大部分页面你希望被索引,但是少数类似订单处理的页面你是不希望被索引的 (想象一下Google尝试去购买你网站上的所有东西)。

在我们web.py的代码中,我们将这两个方法明确区分:

class index:
    def GET(self):
        return "Hello, world!"

当有人用GET请求/时,这个GET函数随时会被web.py调用。

好了,限制我们只需要最后一句就写完了。这行会告诉web.py开始提供web页面:

if __name__ == "__main__": app.run()

这会告诉web.py为我们启动上面我们写的应用。

启动服务

如果你在命令行下面,请输入:: $ python app.py http://0.0.0.0:8080/

现在你的web.py应用正运行在你电脑上的一个真正的web服务器上。 访问那个URL,然后你应该看到"Hello, world!" (你可以通过把IP地址/端口加在"app.py"的后面,来控制web.py在哪里启动服务器。你也可以让它运行在fastcgiscgi服务器上)。

注意: 如果你不能或者不想使用默认端口,你可以使用这样的命令来指定端口号:

$ python app.py 1234

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值