2016-01-27 3 views
0

У меня есть веб-служба, которая принимает файл как запрос на отправку и загружает его на сервер и возвращает путь к файлу.Отправка файла с Php на веб-службу

Служба работает исправно, хотя запрос Ajax. Но теперь я хочу, чтобы сделать запрос от Php к веб-сервиса и его дает мне ошибку, что «Undefined индекс: ImageFile»

Код я пытаюсь использовать ниже

$filename = 'e:/e.jpg'; 

$fields = array('imageFile'=>$filename); 

$fieldsQueryString = http_build_query($fields); 

// you should have curl library install here 
$ch = curl_init("http://127.0.0.1/uploadapi/index.php/api/example/imageupload"); curl_setopt($ch, CURLOPT_POST, count($fields)); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $fieldsQueryString); 
curl_exec($ch); 

ответ

0

Вы должны добавить @ (eta) перед пути к файлу, чтобы загрузить его.

Подробнее читайте в руководстве по PHP для curl_setopt для настройки CURLOPT_POSTFIELDS.

<?php 
$filename = '@e:/e.jpg'; 
$fields = array('imageFile'=>$filename); 
$ch = curl_init("http://127.0.0.1/uploadapi/index.php/api/example/imageupload"); 
curl_setopt($ch, CURLOPT_POST, TRUE); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $fieldsQueryString); 
curl_exec($ch); 
0

Я должен использовать

curl_file_create()

объект, чтобы создать файл и отправить его на веб-службы. Просто сделал это и его работа как шарм.

Thanks

Смежные вопросы