Ajax简单应用之个人简历页面搭建

1.搭建HTTP静态Web服务器。

代码实现:

 1 # 1.导入socket模块
 2 import socket
 3 import threading
 4
 5
 6 # 创建服务器类
 7 class HttpServerSocket(object):
 8     # 给服务器类的对象设置属性
 9     def __init__(self):
10         # 2.创建Socket对象
11         self.server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
12         # 3.设置端口复用
13         self.server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, True)
14         # 4.绑定端口
15         self.server_socket.bind((‘‘, 8000))
16         # 5.设置监听
17         self.server_socket.listen(128)
18
19     def start(self):
20         while True:
21             # 6.等待客户端连接
22             client_socket, ip_port = self.server_socket.accept()
23             # gevent.spawn(self.task, client_socket, ip_port)
24             print("上线了", ip_port)
25             threading.Thread(target=self.task, args=(client_socket, ip_port), daemon=True).start()
26
27     def task(self, client_socket, ip_port):
28         # 7.接收数据
29         recv_data = client_socket.recv(1024).decode(‘utf-8‘)
30         print(recv_data)
31         if not recv_data:
32             print("客户端:%s下线了,端口号为:%s" % ip_port)
33
34         # 8.发送数据
35         # 判断请求资源是否包含参数
36         # 请求行格式:GET /index.html HTTP/1.1
37         recv_path = recv_data.split()[1]
38         # print("第一次分割",recv_path)
39         # 如果有参数则以?分割
40         if ‘?‘ in recv_path:
41             real_recv_path = recv_path.split(‘?‘)[0]
42             # print("?分割",real_recv_path)
43         else:
44             # 如果没有参数,则保持请求路径不变
45             real_recv_path = recv_path
46             # print("无?分割",real_recv_path)
47
48         # 设置没指定资源路径,默认返回index.html
49         if real_recv_path == ‘/‘:
50             real_recv_path = ‘/index.html‘
51
52         # 判断请求的资源路径是否存在
53         try:
54             with open(f"static{real_recv_path}", "rb") as file:
55                 response_body = file.read()
56         except  Exception as e:
57             # 如果不存在则返回404
58             response_line = ‘HTTP/1.1 404 NOT FOUND\r\n‘
59             response_header = ‘Server: PWS/1.0\r\n‘
60             response_body = ‘sorry nor found page!\r\n‘.capitalize()
61             send_data = (response_line + response_header + ‘\r\n‘ + response_body).encode(‘utf-8‘)
62             client_socket.send(send_data)
63         else:
64             # 如果存在则换回请求的页面信息
65             response_line = ‘HTTP/1.1 200 OK\r\n‘
66             response_header = ‘Server: PWS/1.0\r\n‘
67             send_data = (response_line + response_header + ‘\r\n‘).encode(‘utf-8‘) + response_body
68             client_socket.send(send_data)
69         finally:
70             # 断开与客户端连接
71             client_socket.close()
72
73     def __del__(self):
74         # 当服务端程序结束时停止服务器服务
75         self.server_socket.close()
76
77
78 def main():
79     http_socket = HttpServerSocket()
80     http_socket.start()
81
82
83 if __name__ == ‘__main__‘:
84     main()

2.编写HTML页面:

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>Alax练习</title>
 6     <script src="js/jquery-1.12.4.min.js"></script>
 7     <script src="js/ajax.js"></script>
 8
 9 </head>
10 <body>
11     <div id="div" style="text-align: center;"><h1>个人简历信息</h1></div>
12          <hr>
13
14     <table>
15         <tr><td>个人照片:</td><td id="photo">无</td></tr>
16         <tr><td>姓名:</td><td id="name">无</td></tr>
17         <tr><td>年龄:</td><td id="age">无</td></tr>
18         <tr><td>毕业院校:</td><td id="school">无</td></tr>
19         <tr><td>专业:</td><td id="vocational">无</td></tr>
20         <tr><td>专攻语言:</td><td id="langage">无</td></tr>
21         <tr><td>开发经验:</td><td id="empiric">无</td></tr>
22         <tr><td>个人技能:</td><td id="habby">无</td></tr>
23         <tr><td>获奖信息:</td><td id="reward">无</td></tr>
24     </table>
25         <hr>
26 </body>
27 </html>

3.编写Ajax.js文件:

 1         $(function(){
 2             $.get(‘resume.json‘,{},function(response){
 3                 $(‘#photo‘).html("<img src=‘"+response[0]+"‘>");
 4                 $(‘#name‘).html(response[1]);
 5                 $(‘#age‘).html(response[2]);
 6                 $(‘#school‘).html(response[3]);
 7                 $(‘#langage‘).html(response[4]);
 8                 $(‘#empiric‘).html(response[5]);
 9                 $(‘#habby‘).html(response[6]);
10                 $(‘#reward‘).html(response[7]);
11             },‘JSON‘).error(function(){
12                 $(‘#div‘).html(‘<h1>对不起,请求错误!</h1>‘)
13             });
14         });

4.启动HTTP静态Web服务器,

访问http://127.0.0.1:8000/Ajax.html,

原文地址:https://www.cnblogs.com/chao666/p/12026450.html

时间: 2024-07-30 15:53:35

Ajax简单应用之个人简历页面搭建的相关文章

ExtJS5 (一) 超简单整合到eclipse中,搭建简单的开发环境

个人一直欣赏大神们的唯美前端页面,而现在个人从事的是MIS系统等相关的开发,故决定学习ExtJS,目前最新版本是5.0,就从5.0开始吧. 作为java开发人员,自然而然的想在eclipse中搞个extjs的简单开发环境,以后再慢慢丰富,开始吧~ 第一步:从官网下载extjs,目前是5.0版本 第二步:用eclipse创建一个动态web工程 第三步:在工程的WebContent目录下创建一个文件夹,叫作ExtJS5. 第四步:解压从官网下载的extjs,解压之后,目录结构如下: 看一下根目录下的

ajax简单登录说明

ajax 简单登录说明: //依据id查找节点 function $(id){ return document.getElementById(id); } //依据id查找节点,然后返回节点的value function $F(id){ return $(id).value; } //获得ajax对象 function getXhr(){ var xhr = null; if(window.XMLHttpRequest){ //非ie xhr= new XMLHttpRequest(); }el

asp.net MVC3 + JQuery 的ajax简单使用

一直都没有使用过JQuery,更没使用过JQuery的ajax支持带来的方便,今天试了一下,真是减少了很多工作量,使用方法也比较简单 这里先记下来,以后使用时可以再拿着用. 本应用中,本来是准备使用长链接的方式,在server端有错误消息产生时,能实时返回错误消息.可在使用长链接时,因为.net功底 不够,以失败告终!所以采用了javascript中间隔查询的方法. 页面代码如下: Java代码   @{ ViewBag.Title = "ErrorMonitor"; } <sc

和我一起打造个简单搜索之ElasticSearch集群搭建

我们所常见的电商搜索如京东,搜索页面都会提供各种各样的筛选条件,比如品牌.尺寸.适用季节.价格区间等,同时提供排序,比如价格排序,信誉排序,销量排序等,方便了用户去找到自己心里理想的商品. 站内搜索对于一个网站几乎是标配,只是搜索的强大与否的区别,有的网站只支持关键词模糊搜索,而淘宝,京东提供了精细的筛选条件,同时支持拼音搜索等更方便的搜索方式. 由于笔者在一家做网络文学的公司工作,所以实现就是以小说为商品的搜索,具体可以参考起点网小说的搜索. 如图所示,起点网的搜索提供了关键词搜索和排序条件以

采用AJAX + history api做无刷新页面的分页

大家都知道浏览器有一个history对象是用来保存浏览历史的,比如一个窗口访问了两个个页面,那么history.length属性等于2. history api在H5时代新增了两个方法,pushState和replaceState 从名字就可以知道一个是新增一条记录一个是改变当前那么记录. 用AJAX加history做分页的好处就是既提高了用户体验,支持前进后退,加快页面加载速度又对搜索引擎十分友好 首先我们来判断浏览器是否支持pushState/replaceState if(!!(windo

JavaScript学习笔记-简单的倒计时跳转页面

<!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8" /> <title>简单的倒计时跳转页面</title> </head> <body> <p><span id="time&qu

Ajax中主页加载分页面后,分页面js脚本不执行的解决办法

没看懂,稍后再看 Ajax中主页加载分页面后,分页面js脚本不执行的解决办法 最近捣鼓JQuery,其中强大的Ajax系列函数令人印象深刻,所以做项目时毫不犹豫地采用了一下该技术,在主页中动态加载分页面进来,咋看效果 不错,都能实现了第一层次的加载,但深入下去问题就出来了:动态加载进来的页面中外联了js文件,其中的脚本却没有在加载后运行! (脚本在单独浏览该分页面时运行是正常的) 我郁闷了,打开Firefox中的Firebug查看了加载后的主页面中的DOM,所有元素的加载都是正常的啊~ 自己改来

ajax 简单学习

客户端代码function login(type) { $.ajax({ type: "post", url: "logindo.aspx", data: { user: $("#name").val(),//对应<input type="text" id="name"/>的值 pwd:pwd ////对应<input type="password" id="

绿色简单的学校登录html页面

效果预览:http://hovertree.com/texiao/css/22/ 代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <link rel="stylesheet" href="http://hovertree.com/texiao/css/22/css/hovertree_login.css" /> <