【发布时间】:2010-02-25 05:33:11
【问题描述】:
我已经成功地在谷歌应用引擎上实现了从 android 到 java httpservlet,但我想用 python 代替服务器端。我是 python 新手。有人做过吗?我已经启动并运行了留言簿示例,但我似乎无法将帖子从我的 android 应用程序发送到服务器。
我还想向客户端发出一个字符串响应,例如“成功”。
我们将不胜感激。
谢谢
***客户端java:
URL url = new URL(Const.SERVER_NAME);
URLConnection connection = url.openConnection();
connection.setDoOutput(true);
OutputStreamWriter out = new OutputStreamWriter(
connection.getOutputStream()
);
out.write("content=12345");
out.close();
***服务器端 Python:
class Upload(webapp.RequestHandler):
def post(self):
greeting.content = self.request.get('content')
greeting.put()
***服务器端 Java(工作)
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
try {
String instring = request.getParameter("content")
// set the response code and write the response data
response.setStatus(HttpServletResponse.SC_OK);
OutputStreamWriter writer = new OutputStreamWriter(response.getOutputStream());
writer.write("Success");
writer.flush();
writer.close();
} catch (IOException e) {
try{
response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
response.getWriter().print(e.getMessage());
response.getWriter().close();
} catch (IOException ioe) {
}
}
【问题讨论】:
-
非工作 Python 代码与工作 Java 代码的总结是什么?很难提供帮助,因为在 Python 中接受 HTTP POST 请求至少与在 Java 中一样容易,而不会看到您在尝试的实现中可能插入了哪些错误!
-
您遇到了什么错误或失败?
-
服务器端什么都没有发生,没有错误。客户端运行无一例外。我想我会坚持使用 java 服务器端进行数据上传,并使用 python 为 web 做所有事情。
标签: java python http google-app-engine post