同步适配器模式(四)

搭建web.py开发环境,web.py是一个开源框架,运行基于python(派森),所以首先下载python安装并配置环境变量,加入path即可。
接着下载web.py,进入文件目录,运行“python setup.py install”安装。

安装参考:
http://www.cnblogs.com/dolphin0520/archive/2013/10/15/3343617.html

运行todo.py,进入文件所在目录,运行“python todo.py”命令运行。成功显示下面界面


否则出错。

错误1:AttributeError: 'module' object has no attribute 'inet_pton'

解决方式:

解决方法,修改Python安装目录下Lib\site-packages\web\net.py文件的第32到第35行为如下内容:

try: 
    socket.inet_pton(socket.AF_INET6, address) 
except: 
    return False 
    try:
        socket.inet_pton(socket.AF_INET6, address)
    except:
        return False
链接:
http://www.2cto.com/kf/201306/218804.html



多半是缩进的问题,改一下即可。

成功后,在浏览器上输入http://192.168.2.39:8080/即可。

todo.py程序中,首先定义url映射
urls = (
    '/', 'Index',
    '/login', 'Login',
    '/logout', 'Logout',
    '/del/(\d+)', 'Delete',
    '/service/login/(.*)/(.*)', 'ServiceLogin',
    '/service/todo/', 'ServiceTodoGet',
    '/service/todo/add/(.*)', 'ServiceTodoAdd',
    '/service/todo/del/(\d+)', 'ServiceTodoDelete',
)

其中客户端登录界面的映射ServiceLogin中如下代码:
if (username,password) in allowed:
     session.logged_in = True
     web.header('Content-Type', 'application/json')
     result = {'result':'ok'}
     return json.dumps(result)
else:
     web.header('Content-Type', 'application/json')
     result = {'result':'error'}
     return json.dumps(result)

in allowed其实是是否在数组中或者map中,搜索allwed可以发现:
allowed = (
    ('user','pass'),
)
也就是说,只有这一个帐号可以登录

另外,todo.py中的输出log可以在控制台查看,如果想输出变量值,可以使用:
  print 'Hello, logging!'
     print username
     print password





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值