ax ios post dosent отправлять любые данные на django - PullRequest
0 голосов
/ 27 января 2020

я использую реагирующее для моего внешнего интерфейса и django для моего внутреннего на pythonanywhere. мои коды переднего конца:

  axios({
    method: 'POST',
    url: 'http://mohammadss.pythonanywhere.com/login',
    // url: '127.0.0.1:8000/login',
    headers: {
      'content-type': 'application/x-www-form-urlencoded;charset=utf-8',
    },
    data: qs.stringify({
      Hello: 'Hello?',
    }),
  })
    .then(res => {
      console.log(res.data);
    })
    .catch(res => {
      console.log(res);
    });

и код моего внутреннего интерфейса:

def Login(request):
res = request.POST ;
return JsonResponse(res , JSONEncoder)

, но они ничего не возвращают. с почтальоном все хорошо. и с функцией fetch () я вижу результат:

fetch('http://mohammadss.pythonanywhere.com/login/', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded',
  },
  body: qs.stringify({
    firstParam: 'yourValue',
    secondParam: 'yourOtherValue',
  }),
}).then(reponse => {
  reponse.json().then(RES => {
    console.log(RES);
  });
});

но топор ios не работает.

1 Ответ

0 голосов
/ 04 февраля 2020

я нашел свой путь. что я сделал: 1- установил [[django -cors-headers 3.2.1] 1 ] 1 на моем хосте Pythonanywhere. спасибо Нима. (и, конечно, я не знаю, было ли это необходимо или нет!).

2 - я изменил свои коды на:

const data = new FormData();
data.append('username', 'myname');
data.append('password', 'blablabla');

axios
  .post('http://mohammadss.pythonanywhere.com/login/', data, {
    headers: {
      'Content-Type': 'multipart/form-data',
    },
  })
  .then(function(response) {
    console.log(typeof response.data.Code);
    if (response.data.Code == '1') {
      alert('Loged IN');
    }
  })
  .catch(function(error) {
    console.log(error);
  });

Я не знаю, насколько чисты мои коды, но работал на меня!

...