403 запрещено сообщение, когда я используется для передачи данных в Django


Я пытаюсь отправить данные с android в приложение Django. Я хочу сохранить данные в таблице в базе данных sqlite под названием "mytable". Вот код для android:

    try {
        ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
        HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost("http://localhost:8000/androidweb/edit/");
        JSONObject j = new JSONObject();
        try {
            j.put("name", "david");
        } catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        nameValuePairs.add(new BasicNameValuePair("year", j.toString()));
        httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
    //  myTextView.setText(j.toString());
        HttpResponse response = httpclient.execute(httppost);
        myTextView.setText(response.getStatusLine().toString());
    //  myTextView.setText(response.toString());
    }catch(Exception e) {
        myTextView.setText("Error in http connection "+e.toString());
}

Теперь вопрос решен. Мне нужно было только иметь возвращаемое значение

1 2

1 ответ:

Похоже на фреймворк подделки межсайтовых запросов Django, который по умолчанию предотвращает запросы POST от третьих лиц. Подробнее читайте в документе Django CSRF docs.