28 lines
965 B
Dart
28 lines
965 B
Dart
import 'dart:developer';
|
|
import 'dart:io';
|
|
|
|
import 'package:http/http.dart' as http;
|
|
import 'package:http/http.dart';
|
|
|
|
import '../../../model/accountData.dart';
|
|
import 'fileSharingApiParams.dart';
|
|
|
|
class FileSharingApi {
|
|
Future<void> share(FileSharingApiParams query) async {
|
|
Map<String, String> headers = {};
|
|
headers.putIfAbsent("Accept", () => "application/json");
|
|
headers.putIfAbsent("OCS-APIRequest", () => "true");
|
|
|
|
Uri endpoint = Uri.https("${AccountData().buildHttpAuthString()}@cloud.marianum-fulda.de", "/ocs/v2.php/apps/files_sharing/api/v1/shares", query.toJson().map((key, value) => MapEntry(key, value.toString())));
|
|
|
|
log("request file share");
|
|
Response response = await http.post(endpoint, headers: headers);
|
|
|
|
if(response.statusCode != HttpStatus.ok) {
|
|
throw Exception("Api call failed with ${response.statusCode}: ${response.body}");
|
|
} else {
|
|
log("File share successfull: ${response.body}");
|
|
}
|
|
|
|
}
|
|
} |