【发布时间】:2013-08-02 13:34:30
【问题描述】:
我在一个 android 应用中有以下代码:
DefaultHttpClient hc=new DefaultHttpClient();
ResponseHandler <String> res=new BasicResponseHandler();
HttpPost postMethod=new HttpPost("http://127.0.0.1:8888/unidad6_eje1_conectarbd/ejecutaPOST");
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("value1", "Value my user entered"));
postMethod.setEntity(new UrlEncodedFormEntity(nameValuePairs));
String response=hc.execute(postMethod,res);
但它在最后一行失败了:
http://127.0.0 1: 8888/unidad6_eje1_conectarbd/ejecutaPOST
可能已正确配置为接收 POST 请求,就像我将该 URL 放在 Web 浏览器中一样,它会给出错误:错误 405 HTTP 方法 GET 不受此 URL 支持。
servlet 的代码如下:
公共类 LoginImpl 扩展 HttpServlet {
public static String nombre="";
String clave="";
@Override
public void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
String value1 = request.getParameter("value1");
System.out.println(value1);
}
}
我认为这不是问题。
谁能告诉我可能发生的事情?
【问题讨论】:
-
“错误 405 HTTP 方法 GET 不受此 URL 支持”似乎调用被视为 GET 调用而不是 POST,并且您的 servlet 中没有 GET 方法。
-
首先总是测试一个网络服务,其次你的应用有使用互联网的权限吗?具有设备或仿真器网络访问权限。最后但并非最不重要的是服务器 127.0.0.1(本地主机环回)真的在您的设备或模拟器上吗?我认为不会。
标签: java android servlets post