import socket
def service_client(new_socket):
"""为这个客户端返回数据"""
# 1. 接收浏览器发送过来的请求 ,即http请求
# GET / HTTP/1.1
# .....
request = new_socket.recv(1024)
print(">>>" * 50)
print(request)
# 2. 返回http格式的数据,给浏览器
# 2.1 准备发送给浏览器的数据---header
response = "HTTP/1.1 200 OK\r\n"
response += "\r\n"
# 2.2 准备发送给浏览器的数据---boy
# response += "hahahhah"
f = open("./html/index.html", "rb")
html_content = f.read()
f.close()
# 将response header发送给浏览器
new_socket.send(response.encode("utf-8"))
# 将response body发送给浏览器
new_socket.send(html_content)
# 关闭套接
new_socket.close()
def main():
"""用来完成整体的控制"""
# 1. 创建套接字
tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
tcp_server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
# 2. 绑定
tcp_server_socket.bind(("", 7890))
# 3. 变为监听套接字
tcp_server_socket.listen(128)
while True:
# 4. 等待新客户端的链接
new_socket, client_addr = tcp_server_socket.accept()
# 5. 为这个客户端服务
service_client(new_socket)
# 关闭监听套接字
tcp_server_socket.close()
if __name__ == "__main__":
main()
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<!-- /fasttmp/mkdist-qt-4.3.5-1211793125/qtopia-core-opensource-src-4.3.5/doc/src/index.qdoc -->
<head>
<title>Qt 4.3: Qtopia Core Reference Documentation</title>
<link href="classic.css" rel="stylesheet" type="text/css" />
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td align="left" valign="top" width="32"><a href="http://www.trolltech.com/products/qt"><img src="images/qt-logo.png" align="left" width="32" height="32" border="0" /></a></td>
<td width="1"> </td><td class="postheader" valign="center"><a href="index.html"><font color="#004faf">Home</font></a> · <a href="classes.html"><font color="#004faf">All Classes</font></a> · <a href="mainclasses.html"><font color="#004faf">Main Classes</font></a> · <a href="groups.html"><font color="#004faf">Grouped Classes</font></a> · <a href="modules.html"><font color="#004faf">Modules</font></a> · <a href="functions.html"><font color="#004faf">Functions</font></a></td>
<td align="right" valign="top" width="230"><a href="http://www.trolltech.com"><img src="images/trolltech-logo.png" align="right" width="203" height="32" border="0" /></a></td></tr></table><h1 align="center">Qtopia Core Reference Documentation<br /><small>Qt for Embedded Linux</small></h1>
<a name="qt-reference-documentation"></a> <table cellpadding="2" cellspacing="1" border="0" width="100%" bgcolor="#e5e5e5">
<tr>
<th bgcolor="#a2c511" width="33%">
Getting Started
</th>
<th bgcolor="#a2c511" width="33%">
General
</th>
<th bgcolor="#a2c511" width="33%">
Developer Resources
</th>
</tr>
<tr>
<td valign="top">
<ul>
<li><strong><a href="qt4-3-intro.html">What's New in Qt 4.3</a></strong></li>
<li><a href="how-to-learn-qt.html">How to Learn Qt</a></li>
<li><a href="installation.html">Installation</a></li>
<li><a href="tutorial.html">Tutorial</a> and <a href="examples.html">Examples</a></li>
<li><a href="porting4.html">Porting from Qt 3 to Qt 4</a></li>
</ul>
</td>
<td valign="top">
<ul>
<li><a href="aboutqt.html">About Qt</a></li>
<li><a href="trolltech.html">About Trolltech</a></li>
<li><a href="commercialeditions.html">Commercial Edition</a></li>
<li><a href="opensourceedition.html">Open Source Edition</a></li>
<li><a href="http://www.trolltech.com/developer/faqs/">Frequently Asked Questions</a></li>
</ul>
</td>
<td valign="top">
<ul>
<li><a href="http://lists.trolltech.com">Mailing Lists</a></li>
<li><a href="http://www.trolltech.com/developer/community/">Qt Community Web Sites</a></li>
<li><a href="http://doc.trolltech.com/qq/">Qt Quarterly</a></li>
<li><a href="bughowto.html">How to Report a Bug</a></li>
<li><a href="http://www.trolltech.com/developer/">Other Online Resources</a></li>
</ul>
</td>
</tr>
<tr>
<th bgcolor="#a2c511">
API Reference
</th>
<th bgcolor="#a2c511">
Core Features
</th>
<th bgcolor="#a2c511">
Key Technologies
</th>
</tr>
<tr>
<td valign="top">
<ul>
<li><a href="classes.html">All Classes</a></li>
<li><a href="mainclasses.html">Main Classes</a></li>
<li><a href="groups.html">Grouped Classes</a></li>
<li><a href="annotated.html">Annotated Classes</a></li>
<li><a href="modules.html">Qt Classes by Module</a></li>
<li><a href="hierarchy.html">Inheritance Hierarchy</a></li>
<li><a href="functions.html">All Functions</a></li>
<li><a href="qtopiacore.html">Qtopia Core</a></li>
<li><a href="overviews.html">All Overviews and HOWTOs</a></li>
<li><a href="gallery.html">Qt Widget Gallery</a></li>
<li><a href="http://doc.trolltech.com/extras/qt43-class-chart.pdf">Class Chart</a></li>
</ul>
</td>
<td valign="top">
<ul>
<li><a href="signalsandslots.html">Signals and Slots</a></li>
<li><a href="object.html">Object Model</a></li>
<li><a href="layout.html">Layout Management</a></li>
<li><a href="paintsystem.html">Paint System</a></li>
<li><a href="graphicsview.html">Graphics View</a></li>
<li><a href="accessible.html">Accessibility</a></li>
<li><a href="containers.html">Tool and Container Classes</a></li>
<li><a href="i18n.html">Internationalization</a></li>
<li><a href="plugins-howto.html">Plugin System</a></li>
<li><a href="intro-to-dbus.html">Inter-process Communication</a></li>
<li><a href="qtestlib-manual.html">Unit Testing Framework</a></li>
</ul>
</td>
<td valign="top">
<ul>
<li><a href="threads.html">Multithreaded Programming</a></li>
<li><a href="qt4-mainwindow.html">Main Window Architecture</a></li>
<li><a href="richtext.html">Rich Text Processing</a></li>
<li><a href="model-view-programming.html">Model/View Programming</a></li>
<li><a href="stylesheet.html">Style Sheets</a></li>
<li><a href="qtnetwork.html">Network Module</a></li>
<li><a href="qtopengl.html">OpenGL Module</a></li>
<li><a href="qtsql.html">SQL Module</a></li>
<li><a href="qtsvg.html">SVG Module</a></li>
<li><a href="qtxml.html">XML Module</a></li>
<li><a href="qtscript.html">Script Module</a></li>
<li><a href="activeqt.html">ActiveQt Framework</a></li>
</ul>
</td>
</tr>
<tr>
<th bgcolor="#a2c511">
Add-ons & Services
</th>
<th bgcolor="#a2c511">
Tools
</th>
<th bgcolor="#a2c511">
Licenses & Credits
</th>
</tr>
<tr>
<td valign="top">
<ul>
<li><a href="http://www.trolltech.com/products/qt/addon/solutions/">Qt Solutions</a></li>
<li><a href="http://www.trolltech.com/products/qt/3rdparty/">Partner Add-ons</a></li>
<li><a href="http://qt-apps.org">Third-Party Qt Components (qt-apps.org)</a></li>
<li><a href="http://www.trolltech.com/support/">Support</a></li>
<li><a href="http://www.trolltech.com/support/training/">Training</a></li>
</ul>
</td>
<td valign="top">
<ul>
<li><a href="designer-manual.html">Qt Designer</a></li>
<li><a href="assistant-manual.html">Qt Assistant</a></li>
<li><a href="linguist-manual.html">Qt Linguist</a></li>
<li><a href="qmake-manual.html">qmake</a></li>
<li><a href="qttools.html">All Tools</a></li>
</ul>
</td>
<td valign="top">
<ul>
<li><a href="gpl.html">GNU General Public License</a></li>
<li><a href="3rdparty.html">Third-Party Licenses Used in Qt</a></li>
<li><a href="licenses.html">Other Licenses Used in Qt</a></li>
<li><a href="trademarks.html">Trademark Information</a></li>
<li><a href="credits.html">Credits</a></li>
</ul>
</td>
</tr>
</table>
<p /><address><hr /><div align="center">
<table width="100%" cellspacing="0" border="0"><tr class="address">
<td width="30%">Copyright © 2008 <a href="trolltech.html">Trolltech</a></td>
<td width="40%" align="center"><a href="trademarks.html">Trademarks</a></td>
<td width="30%" align="right"><div align="right">Qt 4.3.5</div></td>
</tr></table></div></address></body>
</html>