在上一篇日志中已经讨论和实现了根据url执行相应应用,在我阅读了bottle.py官方文档后,按照bottle的设计重写一遍,主要借鉴大牛们的设计思想. 一个bottle.py的简单实例 来看看bottle是如何使用的,代码来自http://www.bottlepy.org/docs/0.12/index.html: from bottle import route, run, template @route('/hello/<name>') def index(name): return t…
自己动手写一个web框架,因为我是菜鸟,对于python的一些内建函数不是清楚,所以在写这篇文章之前需要一些python和WSGI的预备知识,这是一系列文章.这一篇只实现了如何处理url. 参考这篇文章:http://www.cnblogs.com/russellluo/p/3338616.html 预备知识 web框架主要是实现web服务器和web应用之间的交互.底层的网络协议主要有web服务器完成.譬如监听端口,填充报文等等. Python内建函数__iter__和__call__和WSGI…
一.概述 二.从demo_app开始 三.WSGI中的application 四.区分URL 五.重构 1.正则匹配URL 2.DRY 3.抽象出框架 六.参考 一.概述 在Python中,WSGI(Web Server Gateway Interface)定义了Web服务器与Web应用(或Web框架)之间的标准接口.在WSGI的规范下,各种各样的Web服务器和Web框架都可以很好的交互. 由于WSGI的存在,用Python写一个简单的Web框架也变得非常容易.然而,同很多其他的强大软件一样,要…
原文:http://www.jb51.net/article/75002.htm 这篇文章主要介绍了使用Java编写一个简单的Web的监控系统的例子,并且将重要信息转为XML通过网页前端显示,非常之实用,需要的朋友可以参考下 公司的服务器需要实时监控,而且当用户空间已经满了,操作失败,或者出现程序Exception的时候就需要实时提醒,便于网管和程序员调式,这样就把这个实时监控系统分为了两部分, 第一部分:实时系统监控(cpu利用率,cpu温度,总内存大小,已使用内存大小)第二部分:实时告警由于…
一个简单的web框架实现 #!/usr/bin/env python # -- coding: utf-8 -- __author__ = 'EchoRep' from wsgiref.simple_server import make_server def index(): # data = open('html/index.html').read() return data def echo(): # data = open('html/echo.html').read() return d…
动手写一个简单的Web框架(HelloWorld的实现) 关于python的wsgi问题可以看这篇博客 我就不具体阐述了,简单来说,wsgi标准需要我们提供一个可以被调用的python程序,可以实函数或者是类,他需要接受两个参数environ(WSGI 的环境信息) 和 start_response(开始响应请求的函数),并且返回可以被迭代 environ是一个字典,我用print打印出来可以看到里面存储着关于请求的各种信息 start_response:一个发送HTTP响应的函数,接受两个参数…
编写一个简单的Web Server其实是轻而易举的.如果我们只是想托管一些HTML页面,我们可以这么实现: 在VS2013中创建一个C# 控制台程序 编写一个字符串扩展方法类,主要用于在URL中截取文件名 ExtensionMethods.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace w…
动手写一个简单的Web框架(模板渲染) 在百度上搜索jinja2,显示的大部分内容都是jinja2的渲染语法,这个不是Web框架需要做的事,最终,居然在Werkzeug的官方文档里找到模板渲染的代码. 关于模板渲染即render_template,简单实现代码其实只有几行,下面是我的代码: def render_template(path, template, **kwargs): # 获取模板文件夹位置 template_path = os.path.join(path, 'templates…
动手写一个简单的Web框架(Werkzeug路由问题) 继承上一篇博客,实现了HelloWorld,但是这并不是一个Web框架,只是自己手写的一个程序,别人是无法通过自己定义路由和返回文本,来使用的,所以在这篇博客中,将实现一个简单的路由自定义功能 首先引入werkzeug中的两个工具,分别是Map,和Rule,需要通过以下代码引入 from werkzeug.routing import Map, Rule 这两个可以完成路由定义和匹配的基本实现,其次,还引入到werkzeug中的Reques…
来表示.第二个元素是表示期望输出的值. 这个数组定义例如以下: training_data = [  (array([0,0,1]), 0),  (array([0,1,1]), 1),  (array([1,0,1]), 1),  (array([1,1,1]), 1),  ] 从上训练数据能够看到布尔运算符OR的关系例如以下: 接着下来使用随机函数来生成三个0和1之间的权重值.作为初始化值: w = random.rand(3)   到如今能够声明一些变量了,列表变量errors是保存着误差…
在.Net中有两种常用的Web开发方式,一种是Asp.Net WebForm,另一种是Asp.Net MVC.我先简单的给大家介绍下这两种开发方式的特点,然后再应用自定义脚本映射,反射,json2template.js,htm等技术演示一个纯静态的Web框架. Asp.Net WebForm 在Asp.Net WebForm中,请求大都以.aspx为后缀,那么.Net是如何处理.aspx请求呢? 打开.Net的配置文件, .Net4.0配置文件地址(64位):C:\Windows\Microso…
下班后,,没事捣鼓捣鼓个人的小爱好. 首先,说明我的这个运动框架(css所有属性)也是常见的框架一种,健壮性并不是太好,对于新手学习倒是挺好,,若是大神,老司机请拐弯. 上来,我们先定义一个区块,然后在关联一个可以实时看到属性值发生变化值的标签. html: <body> <div id = "div1"> </div> <input type = "text" id = "txt1"> </…
  游戏说明:绿色数字(左边表示成功停止在整秒的次数,右边表示停止的总次数) 点击stop,如果小数点后为0,即你停止的时间是整秒数,右上方斜杠左边数字加一 把代码复制到这个网页code run here ,把原来的代码覆盖掉,然后点击左上角的三角 运行就可以了. import simplegui import random import math time = 0 message = "0:00.0" success = 0 total = 0 def forBC(t): if t…
编写 Servlet 类 首先,需要在 java 目录下,创建一个名为 org.smart4j.chapter1 的包.然后,在该包下创建一个 HelloServlet  的类,代码如下: package org.smart4j.chapter1; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; imp…
#!D:\Programs\Python\Python35-32\python.exe import cgi def htmlTop():     print("Content-type: text/html\n")     print()     print("""<!DOCTYPE html>         <html lang="en">             <head>        …
from wsgiref.simple_server import make_server def book(request):     #视图函数 return [b'<h1> book !!! </h1>']def web(request): return [b'<h1> web !!! </h1>'] def routers(): urlpatterns = ( ('/book',book),      #url 映射    ('/web',web),…
用Python编写一个简单的Http Server Python内置了支持HTTP协议的模块,我们可以用来开发单机版功能较少的Web服务器.Python支持该功能的实现模块是BaseFTTPServer, 我们只需要在项目中引入就可以了: from BaseHTTPServer import BaseHTTPRequestHandler,HTTPServer 1 Hello world ! Let’s start with the first basic example. It just ret…
本Guide利用Eclipse以及Ant建立一个简单的Web Service,以演示Web Service的基本开发过程: 1.系统条件: Eclipse Java EE IDE for Web Developers Java SE 6 Windows XP 2.基本环境搭建: 1)Java SE6 JDK的安装:下载Java SE6 JDK,双击,安装默认选项进行安装即可. 2)Eclipse的安装与配置: 安装时直接解压.     配置处有两点,Window>Preferences>Jav…
编号:1018时间:2016年6月13日16:06:41功能:Node.js简单介绍并实现一个简单的Web MVC框架URL :https://cnodejs.org/topic/4f16442ccae1f4aa27001135…
在之前的博客中我更大家说过Http协议是对tcp协议的封装,其底层还是使用tcp协议来进行数据传出的,浏览器实际上就是一个Socket客户端,今天呢我们就开始着手利用ServerSocket来编写一个自己的web容器,首先在编写容器之前我们要先确定两点. 1.ServerSocket能正常接收到浏览器的请求信息 我们创建一个ServerSocket package cn.wz.net.demo; import java.io.DataInputStream; import java.io.IOE…
目标 使用 CodeIgniter 创建一个简单的 Web 站点.该站点将有一个主页,显示一些宣传文本和一个表单,该表单将发布到数据库表中. 按照 CodeIgniter 的术语,可将这些需求转换为以下内容: 一个控制器,仅包含少数功能(可使用默认的 Welcome 控制器) 一个模型(以及一个数据库表),用于存储联系人信息 一个主视图,包含一些支持 NO1.创建数据库表和模型 从模型入手可帮助理解底层数据库表,之后再开始布设功能和 UI.如果对表将存储哪些内容认识不深,设计与表交互的表单将十分…
Web框架本质及第一个Django实例   Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. 半成品自定义web框架 import socket sk = socket.socket() sk.bind(("127.0.0.1", 80)) sk.listen() while True: conn, addr = sk.accept() data = conn.recv(…
实现简单的web框架 流程: 服务端启动---服务端等待请求---客户端访问---服务端响应请求 代码: from wsgiref.simple_server import make_server #处理请求 def application(environ, start_response):#响应头 start_response('200 OK', [('Content-Type', 'text/html')])#响应内容 return [b'<h1>Hello, web!</h1>…
一.新建project 使用Pycharm,File->New Project…,选择Django,给project命名 (project不能用test命名)   新建的project目录如下: settings.py:工程相关的配置 urls.py:网站访问入口,对应到views wigs.py:部署相关 manage.py:执行命令 templates:html等静态文件   备注:新建工程后需要安装django的lib包,然后验证django是否安装成功 >>> import…
一.JavaScript的补充 1 正则表达式 1.1 test的使用 test 测试是否符合条件 返回true or false 1.2 exec的使用 exec 从字符串中截取匹配的字符 1.3 分组 -/g /m /i 分组 JavaScript 正则表达式- test 测试是否符合条件 返回true or false- exec 从字符串中截取匹配的字符 test 判断字符串是否包含数字 判断字符串是否全是数字 var pattern=/\d+/; pattern.test('aaa12…
flask-sqlalchemy 简单笔记 字数 阅读 评论 喜欢 flask-sqlalchemy SQLAlchemy已经成为了python世界里面orm的标准,flask是一个轻巧的web框架,可以自由的使用orm,其中flask-sqlalchemy是专门为flask指定的插件. 安装flask-sqlalchemy pip install flask-sqlalchemy 初始化sqlalchemy from flask import Flask from flask.ext.sqla…
Symfony2——创建bundle       bundle就像插件或者一个功能齐全的应用,我们在应用层上开发的应用的所有代码,包括:PHP文件.配置文件.图片.css文件.js文件等都会包含在bunde系统中.          可以通过两种方法创建bundle,一种是通过命令行创建,一种是通过手动创建相应的文件和文件夹.          一:通过命令行创建,如下:      图1     执行以上命令 src/Acme/HelloBundle 被创建,指定使用的配置文件格式yml(还可以…
使用web.py 通过python进行网页的编写,下面我们来简单了解一哈web.py 的使用 1 url处理 使用特定的url结构来解析我们发送的请求.如下面所示: urls = ( '/login','login', '/**','index' ) web.py 将url分成两部分组成.第一部分是匹配URL的正则表达式,如上面所示的'/login'.'/**'等.第二部分是接收请求的类的名称,如上面所示的login.index等. 1.1 请求方式GET和POST 接收请求的类实现GET/PO…
一.概述 forum是一个简单的web.py论坛,后端采用Python+web.py+MySQL,前端采用HTML+CSS+JavaScript+jQuery+RequireJS. 该论坛的主要功能包括: 注册.登录.密码找回 头像/签名/邮箱/密码修改 游客自由看贴.文章列表分页显示 登录后发帖.作者才能删贴(所有对该贴的评论也会被删除) 登录后无刷新回帖(包括引用回帖,即对回复的回复) forum代码的GitHub主页:https://github.com/RussellLuo/forum.…
bundle就像插件或者一个功能齐全的应用,我们在应用层上开发的应用的所有代码,包括:PHP文件.配置文件.图片.css文件.js文件等都会包含在bunde系统中.          可以通过两种方法创建bundle,一种是通过命令行创建,一种是通过手动创建相应的文件和文件夹.          一:通过命令行创建,如下:      图1     执行以上命令 src/Acme/HelloBundle 被创建,指定使用的配置文件格式yml(还可以使用xml和php),同时自动在 app/AppK…