本文针对第26章章末的习题提供参考答案。当然,有些习题的正确答案不止一个,特别是“动手试一试”,不过你可以通过这些答案来判断自己的思路是否正确。

第26章 使用套接字建立网络连接

测试题

(1) 服务器是一个可以接受网络连接的程序,许多人专门用它来表示一台运行服务器软件的大型专业计算机。

(2) 在将字符串传给socket.sendall()前,需要用encode('utf-8')来对字符串编码,或者在字符串前面添加一个b,把字符串转换为bytes对象。

(3) 如果你和朋友在不同的局域网上,那么他的计算机的本地IP地址就无法在你所在的网络上工作。

(4) 在shell中,可以用cd命令在目录树中来回移动,这是改变目录(change directory)的缩写。

动手试一试

(1) 打开一个shell窗口,键入telnet helloworldbook3.com 80,按下回车键,然后键入GET /data/message.txt HTTP/1.0,按下回车键,再键入Host: helloworldbook3.com,按两次回车键。这时那台Web服务器会向你发送一个响应!(如果你用的是Windows系统,那么你可能无法在shell窗口中看到自己所键入的内容。但是不必担心,你只要不停地键入这些内容,就可以看到Web服务器的响应了。)

(2) 参见本书网站上的TIO_CH26_2.py文件。该聊天服务器程序支持/me命令。

(3) 参见本书网站上的TIO_CH26_3.py文件。当有新用户进入聊天程序时,该聊天服务器程序可以向其他用户发出通知。

(4) 参见本书网站上的TIO_CH26_4.py文件。该聊天客户端程序将:pizza:替换成了一张比萨图片,如下图所示。本书的随书资料提供了比萨的图片文件(pizza.png)。

增加“表情符号”功能,以比萨图片为例

增加“表情符号”功能,以比萨图片为例