Я просто пытаюсь проверить строки, отправленные с android в django , а затем ответ отправляется из django в виде строки обратно в android Этот код работает, когда я проверяю его на своем веб-браузере, но не на андроид приложении Это Джанго код вида Джанго:Parsing string in android from django
def login(request):
form = LoginForm(request.POST)
if request.method=='POST':
uid=request.POST['uid']
name=request.POST['name']
if name=="ajinkya" :
if uid=='11111':
return HttpResponse("You are logged in...Thanks", content_type="text")
return render_to_response('login.html',{'form':form},context_instance=RequestContext(request))
Я пытаюсь разобрать строку отправленной из Джанго в андроиде
моего андроид код приложения является:
public class UploaddemoActivity extends Activity {
public String strUID;
public String strname;
public String string_response;
InputStream inputStream;
public String url;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final EditText UID = (EditText) findViewById(R.id.UID);
UID.setOnKeyListener(new View.OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
if ((event.getAction() == KeyEvent.ACTION_DOWN) &&
(keyCode == KeyEvent.KEYCODE_ENTER)) {
strUID = UID.getText().toString();
return true;
}
return false;
}
});
final EditText nameText = (EditText) findViewById(R.id.EditText_Nickname);
nameText.setOnKeyListener(new View.OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
if ((event.getAction() == KeyEvent.ACTION_DOWN) &&
(keyCode == KeyEvent.KEYCODE_ENTER)) {
strname = nameText.getText().toString();
return true;
}
return false;
}
});
Button button;
button = (Button) findViewById(R.id.button1);
button.setOnClickListener(new Button.OnClickListener()
{
public void onClick(View v)
{
ArrayList<NameValuePair> vars = new ArrayList<NameValuePair>();
vars.add(new BasicNameValuePair("uid",strUID));
vars.add(new BasicNameValuePair("name",strname));
try{
HttpClient httpclient = new DefaultHttpClient();
url="http://192.168.1.2/mysite/login/";
HttpPost httppost = new HttpPost(url);
httppost.setEntity(new UrlEncodedFormEntity(vars));
HttpResponse response = httpclient.execute(httppost);
string_response = convertResponseToString(response);
Toast.makeText(UploaddemoActivity.this, "Response " + string_response, Toast.LENGTH_LONG).show();
}catch(Exception e){
Toast.makeText(UploaddemoActivity.this, "ERROR " + e.getMessage(), Toast.LENGTH_LONG).show();
System.out.println("Error in http connection "+e.toString());
}
}
});
}
public String convertResponseToString(HttpResponse response) throws IllegalStateException, IOException{
String res = "";
StringBuffer buffer = new StringBuffer();
inputStream = response.getEntity().getContent();
int contentLength = (int) response.getEntity().getContentLength(); //getting content length…..
Toast.makeText(UploaddemoActivity.this, "contentLength : " + contentLength, Toast.LENGTH_LONG).show();
if (contentLength < 0){}
else{
byte[] data = new byte[512];
int len = 0;
try{
while (-1 != (len = inputStream.read(data)))
{
buffer.append(new String(data, 0, len)); //converting to string and appending to stringbuffer
}
}catch (IOException e){e.printStackTrace();}
try{
inputStream.close(); // closing the stream
}catch (IOException e){e.printStackTrace();}
res = buffer.toString(); // converting stringbuffer to string
Toast.makeText(UploaddemoActivity.this, "Result : " + res, Toast.LENGTH_LONG).show();
}
return res;
}
}
это просто дает мне réponse -1, а не строка, которую я послал в Джанго
До сих пор не работает ... – user1163236