【发布时间】:2012-08-22 16:21:41
【问题描述】:
我的应用程序使用标准 httpUrlConnection 代码连接到 apache http 服务器上的 python 代码。 授予网络访问和互联网的所有权限。以前我无法运行此代码,因为我正在使用 Android 3.0 - 最新版本时没有使用 Asych(用于网络访问的不同线程)。现在我完成了这部分。
不,当我调用下面的代码时,响应代码是 200,这很好:
#!/Python27/python
print "Content-type: text/html"
print
print "<html><head>"
print ""
print "</head><body>"
print "Hello."
print "</body></html>"
但是当我使用这段代码时:
# Echo server program
import socket
HOST = '127.0.0.1'
PORT = 80
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(1)
conn, addr = s.accept()
print 'Connected by', addr
while 1:
data = conn.recv(1024)
if not data: break
conn.sendall(data)
conn.close()
它给出 404 响应代码,说 Exception FileNotFoundException。
此外,是的,上面的代码是针对服务器的,这是来自 python 套接字库的示例代码(所以所有的 cmets 都不是我的)。我正在编写一个类似的服务器,它可以提供数据库连接和发布/获取功能。 那么,只需要确定上面的服务器代码有什么问题吗?
任何提示都非常受欢迎。
谢谢。
【问题讨论】:
-
我认为您可能误解了 cmets 在您的服务器程序中的含义。对于一个
80不是非特权端口(那些是1024以上的端口);并且代码是用于创建一个服务器,我想你想要的是写一个客户端?
标签: android python apache http httpurlconnection