Вам нужно использовать
assert (len(dictA) == len(dictB))
Ошибка выдается, когда условие оценивается как ложное.
Я считаю, что код ошибки указывает на то, что ответ был пустым (поскольку не были возвращены даже заголовки). Это означает, что соединение было принято, а затем корректно закрыто (TCP FIN). Есть ряд причин, которые могут вызвать это, но, судя по вашему описанию, наиболее вероятной причиной является какая-то форма межсетевого экрана.
В моем случае ошибка произошла на странице, которую требуют с протоколом HTTP с JavaScript в нем пытающийся сделать Запрос HTTPS. И наоборот.
загрузка страницы After, нажмите F12 (или Ctrl + U) и смотрите на код HTML своей страницы. Если Вы видите что-то как этот в Вашем коде:
<!-- javascript request inside the page -->
<script>
var ajaxurl = "https://example.com/wp-admin/admin-ajax.php";
(...)
</script>
И Ваша страница требовался этот путь:
http://example.com/example-page/2019/09/13/my-post/#elf_l1_Lw
Вы, конечно, столкнетесь с этой ошибкой.
Для фиксации его установите протокол запроса JavaScript, равного протоколу запроса страницы.
Эта ситуация, включающая различные протоколы, для страницы и запросов js, была упомянута, прежде в ответе Brad Parks , но, я предполагаю, диагностическая техника, представленная здесь, легче для большинства пользователей.
Обходной путь: что мы в итоге сделали
Мы решили, что это связано с проблемами брандмауэра, и поэтому мы придумали обходной путь, который помог. Если у кого-то возникла такая же проблема, вот что мы сделали:
Мы по-прежнему записываем данные в текстовый файл на локальном жестком диске, как и раньше, используя HTA.
Когда пользователь нажимает кнопку «отправить данные обратно в сервер », HTA считывает данные и записывает HTML-страницу, которая включает эти данные как остров данных XML (фактически, используя блок сценария SCRIPT LANGUAGE = XML).
HTA запускает ссылку на HTML-страницу в браузер.
HTML-страница теперь содержит javascript, который отправляет данные на сервер (с использованием Microsoft.XMLHTTP).
Надеюсь, это поможет любому с аналогичным требованием. В данном случае это была флеш-игра, которая использовалась на ноутбуке на выставках.
wininet.dll
возвращает как стандартные, так и нестандартные коды состояния, перечисленные ниже.
401 - Unauthorized file
403 - Forbidden file
404 - File Not Found
500 - some inclusion or functions may missed
200 - Completed
12002 - Server timeout
12029,12030, 12031 - dropped connections (either web server or DB server)
12152 - Connection closed by server.
13030 - StatusText properties are unavailable, and a query attempt throws an exception
Для кода состояния «ноль» вы пытаетесь выполнить запрос на локальном компьютере? веб-страница, работающая на веб-сервере или без веб-сервера?
XMLHttpRequest status = 0 и XMLHttpRequest statusText = unknown могут помочь вам, если вы не запускаете свой скрипт на веб-сервере.