【发布时间】:2017-11-10 23:29:30
【问题描述】:
我想向用户发送下载文件,但 HTTP 标头发送错误。我希望发送Content-type: application/octet-stream,但我仍然收到Content-Type: text/html; charset=utf-8。有人可以指出我的错误吗?
TYPO3 7.6.22
打字稿:
page_1505214798 = PAGE
page_1505214798 {
typeNum = 1505214798
config {
contentObjectExceptionHandler = 0
xhtml_cleaning = 0
admPanel = 0
disableAllHeaderCode = 1
additionalHeaders {
}
debug = 0
}
10 = USER_INT
10 {
userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
vendorName = DIX
extensionName = Dixeventmanager
pluginName = Meeting
controller = Event
action = download
switchableControllerActions {
Event {
1 = download
}
}
}
}
Extbase 控制器操作
public function downloadAction() {
// $fn = ...
$result = file_get_contents(PATH_site . $fn);
$this->response->setHeader('Content-type', 'application/octet-stream');
$this->response->setHeader('Content-Disposition', 'attachment; filename="'. basename($fn) .'"');
return $result;
}
带有文件名的 Content-disposition 标头已正确发送,只是 Content-type 在某处被覆盖。
【问题讨论】:
标签: typo3