Как вы добавляете почтовый индекс в почтовый запрос multipart/form-data?Добавить zip в почтовый запрос http:
Вышеприведенная загрузка zip, но когда я загружаю ее, она распаковывается в .cpgz, и если я unizp, что он создает .zip и просто циклы.
Как вы добавляете почтовый индекс в почтовый запрос multipart/form-data?Добавить zip в почтовый запрос http:
Вышеприведенная загрузка zip, но когда я загружаю ее, она распаковывается в .cpgz, и если я unizp, что он создает .zip и просто циклы.
Измените заголовок Content-Disposition
, чтобы указать filename
, который соответствует фактическому названию загружаемого файла. Вы также должны установить Content-Type
либо application/zip
, либо application/x-zip-compressed
, чтобы сервер знал, что загруженные данные являются zip-файлом.
$bytes = Get-Content "C:\Users\User\Test.zip" -Encoding Byte -ReadCount 0
$parameters = "
--$boundary
Content-Disposition: form-data; name=`"file`"; filename=`"Test.zip`"
Content-Type: application/x-zip-compressed
Content-Transfer-Encoding: binary
$bytes
--$boundary--"
Я реализовал изменения, которые вы описали, и это все еще происходит. Я могу загрузить zip, но он просто распаковывается в оригинал, создавая бесконечный цикл. Будет ли это ошибкой в байтах $? Итак, правильно, что я помещаю байты после Content-Transfer или должен быть бинарным? Вот пример моих двоичных данных: 165 166 205 48 156 250 39 89 – GregWringle
Вы помещаете байты в нужное место, но указанные вами байты НЕ являются начальными байтами действительного почтового файла. Zip-файл всегда начинается с '80 75 3 4' decimal (' 50 4B 03 04' hex) - подпись PK в соответствии с спецификацией формата ZIP, которая была первоначально написана PKWARE. –
Хорошо, если это действительный формат zip, почему он будет создавать расстегивающий цикл при загрузке? Я загружаю Test.zip, он распакуется в Test.zip.cpgz, который распакуется в Test.zip и перевернется. Если я открою его в окнах, он скажет, что почтовый индекс недействителен. – GregWringle
Зачем вам размещать ** zip ** -файл с расширением ** txt **? –
На каком языке написан этот код? –
Это написано в Powershell – GregWringle