Загрузка файлов с использованием http-запроса в Extbase, TYPO3 CMS - PullRequest
0 голосов
/ 05 ноября 2019

Мы хотим выгрузить файл с помощью http-запроса на некоторую конечную точку API в TYPO3 9.

1 Ответ

0 голосов
/ 05 ноября 2019

Загрузка файла может быть выполнена с помощью \ TYPO3 \ CMS \ Core \ Http \ RequestFactory in TYPO3

$filePath = '/var/www/html/MyTypo3Project/Image.png';
$username = 'test';
$password = 'test';

$multipart = [
    // File Parameter
    [
        'name'     => 'Image', //Api side parameter name
        'contents' => fopen(realpath($filePath), 'r'), 
        'filename' => 'MyCustomName.png' // Custom filename
    ],

    //Other Parameters
    [
        'name'     => 'custom_param',
        'contents' => 'custom_param_value'
    ]
];

// Request options along with auth header
$additionalOptions = [
    'auth' => [$username, $password],
    'multipart' => $multipart,
];

$requestFactory = GeneralUtility::makeInstance(\TYPO3\CMS\Core\Http\RequestFactory::class);
$response = $requestFactory->request(
    $url, // Api Endpoint Url
    'POST', 
    $additionalOptions // Passing the additional options
);
...