Файловое хранилище.Upload
Материал из Hivext Wiki
Содержание |
Метод Upload
Общая информация
| Параметр | Значение |
|---|---|
| Описание | Загрузка данных в файловое хранилище. |
| Адрес метода | POST http://api.hivext.ru/1.0/storage/uploader/rest/upload |
| Кодирование | multipart/form-data |
| Метод сервиса | Файловое хранилище |
Параметры
| Имя параметра | Тип | Описание |
|---|---|---|
| Входящие параметры | ||
| appid | string | [*] Идентификатор приложения. |
| fid | string | [*] Уникальный идентификатор загружаемого файла. Используется в дальнейшем для получения информации о процессе загрузки файла. Идентификатор генерируется на клиенте (например, случайное число). |
| file | object | [*] Файловый объект или инпут. |
| redirect | string | Адрес на который произойдет редирект и отправится ответ метода после загрузки файла. |
| Возвращаемые параметры | ||
| result | int | Коды ошибок
|
| error | string | Описание ошибки, если она произошла. |
| file | string | Путь к загруженному файлу (по ссылке производится загрузка файла). Если по ссылке требуется отобразить результат в браузере (для просмотра изображений, текстовых документов, и прочих, которые может отображать браузер), то к ней добавляется параметр /view. |
Примеры
JavaScript
<!-- Подключение ядра -->
<script type="text/javascript" src="http://code.hivext.ru/frameworks/js/core.js" />
<!-- Подключение клиента -->
<script type="text/javascript" src="http://api.hivext.ru/1.0/storage/uploader.js" />
<input id="MyFile" type="file" />
var oFile = document.getElementById("MyFile"); // Файловый объект.
oFile.onchange = function() {
// Асинхронный вызов.
Storage.Uploader.Upload(sAppid, sUid, oFile, function(oResponse) {
if(oResponse.result == 0) { // Ошибок нет.
// Показываем путь к файлу.
alert(oResponse.file);
} else {
// Показываем ошибку.
alert(oResponse.error);
}
});
}
<!-- Подключение ядра -->
<script type="text/javascript" src="http://code.hivext.ru/frameworks/js/core.js" />
<!-- Подключение клиента -->
<script type="text/javascript" src="http://api.hivext.ru/1.0/storage/uploader.js" />
<!-- Асинхронный вызов метода в элементе -->
<input type="file" onchange="Storage.Uploader.Upload("APPLICATION_ID", parseInt(Math.random()*100000), this, function(oResponse) { alert(oResponse.file); });" />
Java SE
import java.io.File;
import com.hivext.api.Response;
import com.hivext.api.Callback;
import com.hivext.api.storage.Uploader;
String sUid = Math.random() * 100000 + ""; // Любой идентификатор.
File oFile = new File("MyFile.txt"); // Создаем файловый объект.
// Синхронный вызов.
Response oResponse = Uploader.Upload(sUid, oFile);
if(oResponse.result == 0) { // Ошибок нет.
// Показываем путь к файлу.
System.out.println(oResponse.file);
} else {
// Показываем ошибку.
System.out.println("Error: " + oResponse.error);
}
// Асинхронный вызов.
Uploader.Upload(sUid, oFile, new Callback() {
@Override
public void fire(Response oResponse) {
if(oResponse.result == 0) { // Ошибок нет.
// Показываем путь к файлу.
System.out.println(oResponse.file);
} else {
// Показываем ошибку.
System.out.println("Error: " + oResponse.error);
}
}
});
Java ME
import javax.microedition.io.Connector;
import javax.microedition.io.file.FileConnection;
import com.hivext.api.Response;
import com.hivext.api.Callback;
import com.hivext.api.storage.Uploader;
String sUid = Math.random() * 100000 + ""; // Любой идентификатор.
FileConnection oFile = (FileConnection) Connector.open("MyFile.txt", Connector.READ); // Создаем файловый объект.
// Синхронный вызов.
Response oResponse = Uploader.Upload(sUid, oFile);
if(oResponse.result == 0) { // Ошибок нет.
// Показываем путь к файлу.
System.out.println(oResponse.file);
} else {
// Показываем ошибку.
System.out.println("Error: " + oResponse.error);
}
// Асинхронный вызов.
Uploader.Upload(sUid, oFile, new Callback() {
public void fire(Response oResponse) {
if(oResponse.result == 0) { // Ошибок нет.
// Показываем путь к файлу.
System.out.println(oResponse.file);
} else {
// Показываем ошибку.
System.out.println("Error: " + oResponse.error);
}
}
});
