Поэтому я пытаюсь воссоздать запрос API в JavaScript, как это делается в настоящее время в Python.
Вот часть программы Python, которая имеет значение:
self.data = {'id': username,
'pass': password}
self.session_id = self.post(base_url + loginURLtemplate,
data=self.data).headers
Таким образом, запрос POST возвращает все, что мне нужно. Он возвращает sessionid , а также значение соединения 'Keep-Alive' . Это такое же поведение, как в Почтальоне или браузере.
Теперь, когда речь идет о программе JavaScript, которую я написал:
var formData = new FormData()
formData.append('id', username)
formData.append('pass', password)
var url = base_url
fetch(url, {
method: 'POST',
body: formData,
credentials: 'include',
keepalive: true
})
.then(r => r)
.then(data => {
console.log(data.headers)
})
Он возвращает ответ, аналогичный запросу Python, но на этот раз он пропускает sessionid , а также значение соединения установлено на «закрыть» вместо «Keep-Alive»
Я хочу знать, связано ли это с ошибкой в чем-то, что у меня есть написано ИЛИ , если это является недостатком использования Fetch Web API в JavaScript. Похоже, он успешно подключается к серверу, но получает ответ, который не действует так, как браузер отправил запрос (как это делает запрос Python)