Официальный список типов mime можно найти по адресу Владелец присвоенных номеров (IANA) . В соответствии с их заголовком Content-Type
для zip
является application/zip
.
Тип носителя для файлов rar
официально не зарегистрирован в IANA, но неофициальное широко используемое значение типа mime - application/x-rar-compressed
.
application/octet-stream
означает столько же: «Я отправляю вам поток файлов, а содержимое этого потока не указано» (так что это правда, что это может быть файл zip
или rar
). Предполагается, что сервер обнаруживает, что такое фактическое содержимое потока.
Примечание. Для загрузки небезопасно полагаться на тип mime, установленный в заголовке Content-Type
. Заголовок настроен на клиенте и может быть установлен на любое случайное значение. Вместо этого вы можете использовать функции php file info для обнаружения файла mime-типа на сервере.
Если вы хотите загрузить файл zip
, и ничего больше, вы должны установить только одно значение заголовка Accept
. Любые дополнительные значения будут использоваться в качестве резерва в случае, если сервер не сможет удовлетворить ваш запрос в запрошенном типе application/octet-stream
заголовка.
В соответствии со спецификациями WC3 :
application/zip, application/octet-stream
будет интерпретироваться как: «Я предпочитаю микс-тип application/zip
, но если вы не можете доставить это, application/octet-stream
(поток файлов) также прекрасен».
Итак, только один:
application/zip
Гарантирует вам файл zip
(или ответ 406 - Not Acceptable
в случае, если сервер не может удовлетворить ваш запрос) .
Я бы просто сделал это по старинке
<a onClick="window.history.back()" ....</a>
Таким образом, история браузера пользователей такая же, как если бы они просто нажимали кнопку «назад».
Извините, @ofmiceandmoon. Мой предыдущий ответ был плохим, потому что я не правильно понял ваш вопрос. Вот правильный ответ:
Допустим, у вас есть представление с именем «form». В вашей форме введите:
<input type="text" name="name" value="{{ request()->get('name') }}">
И в вашем контроллере вы хотите перейти к другому представлению с именем «display» и показать входное значение:
$name = $request->input('name');
return view('layouts.display')->with('name', $name);
И в вашем представлении дисплея:
<a href="{{ url()->previous() }}?name={{ $name }}"><button type="submit" class="button btn-sm">Bearbeiten</button></a>
Я надеюсь, что это делает трюк.