Python中文
首页
教程
问答
标签
搜索
登录
注册
用python在服务器端处理HTTP GET输入参数
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我用Python编写了一个简单的HTTP客户机和服务器来进行实验。下面的第一个代码片段显示了如何使用名为imsi的参数发送HTTP GET请求。在第二个代码片段中,我在服务器端展示了dou-Get函数的实现。我的问题是如何提取服务器代码中的imsi参数并将响应发送回客户端,以便向客户端发出imsi有效的信号。<br/> 谢谢。</p> <p>备注:我已验证客户端是否成功发送了请求。</p> <p><strong>客户端代码段</strong></p> <pre><code> params = urllib.urlencode({'imsi': str(imsi)}) conn = httplib.HTTPConnection(host + ':' + str(port)) #conn.set_debuglevel(1) conn.request("GET", "/index.htm", 'imsi=' + str(imsi)) r = conn.getresponse() </code></pre> <p><strong>服务器代码段</p> <pre><code>import sys, string, cStringIO, cgi, time, datetime from os import curdir, sep from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer class MyHandler(BaseHTTPRequestHandler): # I want to extract the imsi parameter here and send a success response to # back to the client. def do_GET(self): try: if self.path.endswith(".html"): #self.path has /index.htm f = open(curdir + sep + self.path) self.send_response(200) self.send_header('Content-type','text/html') self.end_headers() self.wfile.write("<h1>Device Static Content</h1>") self.wfile.write(f.read()) f.close() return if self.path.endswith(".esp"): #our dynamic content self.send_response(200) self.send_header('Content-type','text/html') self.end_headers() self.wfile.write("<h1>Dynamic Dynamic Content</h1>") self.wfile.write("Today is the " + str(time.localtime()[7])) self.wfile.write(" day in the year " + str(time.localtime()[0])) return # The root self.send_response(200) self.send_header('Content-type','text/html') self.end_headers() lst = list(sys.argv[1]) n = lst[len(lst) - 1] now = datetime.datetime.now() output = cStringIO.StringIO() output.write("<html><head>") output.write("<style type=\"text/css\">") output.write("h1 {color:blue;}") output.write("h2 {color:red;}") output.write("</style>") output.write("<h1>Device #" + n + " Root Content</h1>") output.write("<h2>Device Addr: " + sys.argv[1] + ":" + sys.argv[2] + "</h1>") output.write("<h2>Device Time: " + now.strftime("%Y-%m-%d %H:%M:%S") + "</h2>") output.write("</body>") output.write("</html>") self.wfile.write(output.getvalue()) return except IOError: self.send_error(404,'File Not Found: %s' % self.path) </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p><code>cgi</code>模块包含<code>FieldStorage</code>类,该类应该在CGI上下文中使用,但似乎也很容易在上下文中使用。</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
我想从用户inpu创建一个类的实例
8 回答
我想从用户导入值,为此
2 回答
我想从用户那里得到一个整数输入,然后让for循环遍历该数字,然后调用一个函数多次
8 回答
我想从用户那里收到一个列表,并在其中执行一些步骤,然后在步骤完成后将其打印回来,但它没有按照我想要的方式工作
7 回答
我想从用户那里获取输入,并将值传递给(average=dict[x]/6),然后在那里获取resu
3 回答
我想从第一个列表中展示第一个词,然后从第二个列表中展示十个词,以此类推- Python
4 回答
我想从第一个空lin开始解析文本文件
3 回答
我想从简历、简历中提取特定部分
6 回答
我想从给定字典(python)的字符串中删除\u00a9、\u201d和类似的字符。
2 回答
我想从给定的网站Lin下载许多文件扩展名相同的Wget或Python文件
1 回答
我想从网上搜集一些关于抵押贷款的数据
3 回答
我想从网站上删除电子邮件地址
10 回答
我想从网站上读取数据该网站包含可下载的文件,然后我想用python脚本把它发送给oracle如何?
9 回答
我想从网站中提取数据,然后将其显示在我的网页上
10 回答
我想从网页上提取统计数据。
5 回答
我想从网页上解析首都城市,并在用户输入国家时在终端上打印它们
3 回答
我想从色彩图中删除前n个颜色,而不丢失原始颜色数
1 回答
我想从课堂上打印字典里的键
2 回答
我想从费用表中获取学生上次支付的费用,其中学生id=id
2 回答
我想从较低的顺序对多重列表进行排序,但我无法在一行中生成结果
7 回答