запрос от python получить другой ответ от nodejs - PullRequest
0 голосов
/ 27 февраля 2020

Я пытаюсь сделать тот же запрос от nodejs. python код

import requests
 r = requests.post(url,
                              data=data,
                              headers={
                                  'User-Agent': self.ua,
                                  'Content-Type': 'application/x-www-form-urlencoded'
                              }
                              )

, и в узле я пробовал извлечение узла и Ax ios и запрос, но не получая тот же ответ, я также пробовал CURL из bash, но получал тот же ответ узла, я попытался напечатать python заголовки print (r.request.headers) и скопировать вставить его в узел, но получить другой ответ

Axios.post(url, {
      data,
      headers: {
        "User-Agent":
          "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36",
        "Content-Type": "application/x-www-form-urlencoded",


}
    })
      .then(text => console.log(text.data))
      .catch(err => {
        console.log(err);
      });

Я получаю другой результат в python Я получаю то, что Я ожидаю, но в узле я получаю html ответ

 Sorry, could not complete request because: <div class="tk-intro" style="font-size: 14px;color:#ff090f;">application information was not supplied.</div> 

, но в python отлично работает

1 Ответ

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

Я попытался напечатать заголовки запроса, URL-адрес и данные и обнаружил, что должен преобразовать данные в строку запроса, например

"appleId=email@gmail.com&accountPassword=xxxxxx"

, вместо того, чтобы передавать ее как JSON

{
"appleID": "email@gmail.com",
"accountPassword": "xxxx"
}
...