我正在用Python做一个带有API的Android应用程序。API在googleappengine云上,当我用Postman测试它时,一切正常。你知道吗
我正在尝试用POST方法登录。该方法返回json,其中包含我一直得到的用户信息:FileNotFoundException
以下是我的一些代码:
try{
String account = params[0].get(0);
String password = params[0].get(1);
URL url = new URL("http", WEB_SERVICE_URL, PORT, REST_LOGIN);
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setConnectTimeout(CONNECTION_TIMEOUT);
httpURLConnection.setRequestMethod("POST");
httpURLConnection.setDoOutput(true);
httpURLConnection.setRequestProperty("Content-Type", "application/json");
httpURLConnection.setRequestProperty("Accept", "application/json");
JSONObject json = jsonParser.serialJsonLogin(nomCompte, motPasse);
osw = new OutputStreamWriter(httpURLConnection.getOutputStream(),"UTF-8");
osw.write(json.toString());
osw.flush();
String body = readStream(httpURLConnection.getInputStream());
osw.close();
Log.i(TAG, "Return : " + body);
user = jsonParser.deserializeJsonUser(body);
}catch (Exception e) {
mException = e;
}finally {
if (mHttpURLConnection != null) {
mHttpURLConnection.disconnect();
}
}
return user;
At:String body=readStream(httpURLConnection.getInputStream());我得到一个java.io.FileNotFoundException异常:http://10.0.2.2:8080/login
我的readStream方法很好,我已经测试过了。如果我在我的谷歌应用引擎日志,我可以看到没有404,或任何错误。如果我找到用户,我会得到201如果不是403。所以即使错误是FileNotFound,我也会看到状态码,这意味着URL实际上是正确的。你知道吗
更新:我的API给了我一个201,getInputStream显然在201状态下不工作。在API中将我的return状态改为200,可以正常工作。你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐