Łączenie z Azure Blob Storage z poziomu Power Apps
Power Apps może połączyć się z Azure Blob Storage. Pliki w formacie programu Word, Excel lub obrazy multimedialne, pliki dźwiękowe lub filmy można przesłać za pomocą łącznika Azure Blob Storage dla Power Apps.
Podczas projektowania aplikacji kanwy łączącej się z Azure Blob Storage aplikacja używa nazwy konta i klucza magazynu obiektów blob do połączenia. Po udostępnieniu aplikacji innym użytkownikom można użyć połączenia skonfigurowanego w aplikacji w celu przekazania plików do Azure Blob Storage bez konieczności udostępniania nazwy i kluczy magazynu obiektów blob użytkownikom aplikacji.
W tym artykule dowiesz się, jak utworzyć przykładową aplikację kanwy, która łączy się z Azure Blob Storage, i dodać formanty do aplikacji umożliwiające przekazywanie różnych typów plików do połączonego magazynu obiektów blob.
Uwaga
Aby dowiedzieć się więcej o innych typach opcji przechowywania w chmurze za pomocą Power Apps (takich jak OneDrive, OneDrive for Business, Google Drive, Dropbox lub Box), przejdź do tematu Łączenie z magazynem w chmurze z poziomu Power Apps.
Wymagania wstępne
Przed rozpoczęciem należy utworzyć i skonfigurować konto BlockBlobStorage. Można również użyć starszego konta BlobStorage, chociaż nie jest to zalecane. Więcej informacji: Typy kont magazynowych w Azure Blob Storage
Tworzenie połączenia z Azure Blob Storage
Power Apps wymaga połączenia z Azure Blob Storage, które będzie tworzone dla aplikacji służącej do łączenia się z magazynem.
Aby utworzyć połączenie z Azure Blob Storage:
Zaloguj się do usługi Power Apps.
W lewym okienku rozwiń pozycję Dane.
Wybierz Połączenia.
Wybierz Nowe połączenie.
Wybierz Azure Blob Storage.
Skopiuj i wklej nazwę konta oraz klucz dostępu.
Aby uzyskać więcej informacji na temat kopiowania nazwy konta i klucza dostępu, przejdź do strony Wyświetlanie kluczy dostępu do kont na platformie Azure.
Wybierz pozycję Utwórz.
Połączenie z Azure Blob Storage jest teraz skonfigurowane i gotowe do użycia w aplikacjach kanw.
Tworzenie aplikacji kanwy za pomocą połączenia z Azure Blob Storage
Po utworzeniu połączenia z Azure Blob Storage utwórzmy aplikację kanw, która łączy się z tym magazynem.
Uwaga
W tej sekcji utworzysz przykładową aplikację z przykładowym formantami, funkcjami i układem. W zależności od wymagań biznesowych możesz utworzyć aplikację o innej strukturze lub dostosować ją w inny sposób.
Utwórz pustą aplikację kanwy o nazwie „Przykładowa aplikacja dla Magazynu obiektów blob Azure” i układu Telefon.
W lewym okienku programu Power Apps Studio wybierz .
Wybierz Dodaj dane.
Z listy łączników wybierz pozycję Azure Blob Storage.
Wyświetlanie kontenerów i plików
Teraz, gdy masz aplikację połączoną z Azure Blob Storage, dodajmy galerie, aby zobaczyć kontenery i pliki w kontenerach z połączonego magazynu.
Wybierz opcję Wstaw -> Galeria -> Pustą pozioma.
Z prawej strony ekranu w okienku właściwości wybierz rozwijaną pozycję Układ i wybierz pozycję Tytuł.
Wybierz pierwszą W galerii i usuń ją.
Z prawej strony ekranu w okienku właściwości wybierz rozwijaną pozycję źródła danych i wybierz pozycję Azure Blob Storage.
Ustaw właściwość Items galerii na:
AzureBlobStorage.ListRootFolderV2().value
Wykonanie tej operacji powoduje utworzenie listy obiektów blob w folderze głównym w usłudze Azure Blob Storage. Więcej informacji: Obiekty blob — lista w folderze głównym
Wybierz opcję Wstaw -> Galeria -> Pusta pionowa, aby dodać inną pustą galerię pionową.
Przenieś galerię poniżej dodanej wcześniej galerii, w której jest wyświetlona lista kontenerów.
Z prawej strony ekranu w okienku właściwości wybierz rozwijaną pozycję Układ i wybierz pozycję Tytuł, podtytuł i treść.
Wybierz pierwszą W galerii i usuń ją.
Z prawej strony ekranu w okienku właściwości wybierz rozwijaną pozycję źródła danych i wybierz pozycję Azure Blob Storage.
Ustaw właściwość Items galerii na:
AzureBlobStorage.ListFolderV2(Gallery1.Selected.Id).value
Ta operacja zawiera listę obiektów blob w kontenerze. Więcej informacji: Obiekty blob listy
Uwaga
Galeria1 w tej formule stanowi odwołanie do galerii dodanej wcześniej, w której wymieniono wszystkie kontenery na koncie magazynu. Zaktualizuj formułę za pomocą nazwy galerii, jeśli jest inna.
Z prawej strony ekranu w okienku właściwości wybierz opcję Edytuj dla Pól.
Zmień wybrane pola tytułu galerii jako DisplayName, podtytuł jako LastModified, a treść jako Path.
W galerii będzie teraz wyświetlona lista plików z kontenera wybranego przy użyciu galerii u góry.
Wybierz Wstaw -> Etykieta tekstowa.
Umieść etykietę u góry ekranu aplikacji.
Właściwość tekstu etykiety należy ustawić jako „Wybierz kontener”.
Użyj okienka właściwości po prawej stronie ekranu i wybierz odpowiedni kolor, rozmiar i kolor tła tekstu etykiety.
Wybierz Wstaw -> Etykieta tekstowa.
Umieść etykietę nad galerią jako listę plików.
Właściwość tekstu etykiety należy ustawić jako „Lista plików”.
Przekazywanie plików do Azure Blob Storage
W przypadku tak otwartego projektu aplikacji możesz wybrać kontener, a następnie wyświetlić pliki z kontenera.
Skonfigurujmy aplikację za pomocą formantów i logiki, aby zezwolić na przekazywanie plików do połączonego Azure Blob Storage.
Wybierz opcję Wstaw -> Media -> Dodaj obraz, aby dodać możliwość wybierania plików do przekazania.
Zmień rozmiar formantu Dodaj obraz i umieść go w lewej dolnej części ekranu aplikacji.
Właściwość tekstową formantu należy ustawić jako „Wybierz plik do przekazania”.
Wybierz Wstaw -> Przycisk.
Umieść przycisk po prawej dolnej stronie ekranu aplikacji.
Właściwość tekstu przycisku należy ustawić jako „Wgraj”.
Wybierz Wstaw -> Dane tekstowe.
Umieść formant wprowadzania tekstu nad przyciskiem Wgraj.
Właściwość domyślną przycisku należy ustawić jako „Wprowadź nazwę pliku”.
Ustaw właściwość OnSelect kontrolki przycisku na:
AzureBlobStorage.CreateFile(Gallery1.Selected.Name,TextInput1.Text, UploadedImage1.Image)
Ta operacja przekazania obiektu blob do Azure Blob Storage. Więcej informacji: Tworzenie obiektu blob
Uwaga
Galeria1 w tej formule stanowi odwołanie do galerii dodanej wcześniej, w której wymieniono wszystkie kontenery na koncie magazynu. Plik zostanie przekazany do wybranego kontenera w galerii 1. TextInput1 i uploadImage1 odwołują się do formantów wprowadzania tekstu i przekazywania obrazów. Zaktualizuj formułę za pomocą nazwy formantów, jeśli jest inna.
Kontrolki aplikacji będą teraz wyglądać tak, jak w przykładowej aplikacji.
Porada
Upewnij się, że podczas używania opcji przekazywania zaznaczono opcję Wszystkie pliki, aby zapewnić, że wszystkie typy plików będą widoczne w oknie dialogowym Eksploratora plików.
Pobieranie plików z Azure Blob Storage
Do tej pory dodano możliwość przeglądania kontenerów, plików z wybranego kontenera oraz opcję przesyłania plików do magazynu. Teraz spróbujmy zrozumieć, jak pracować z funkcjami pobierania ze połączonym magazynem.
Zaznacz pierwszy wiersz w galerii z listą plików z kontenera.
Wybierz Wstaw -> Ikony -> Pobierz. Powoduje to dodanie ikony pobierania dla wszystkich wierszy w galerii.
Przenieś pierwszą ikonę pobierania w stronę prawej strony galerii na ekranie aplikacji. Powoduje to również przeniesienie pozostałych ikon dla następnych wierszy w galerii.
Ustaw właściwość OnSelect ikony pobierania na:
Launch(AzureBlobStorage.CreateShareLinkByPath(ThisItem.Path).WebUrl)
Wykonanie tej operacji powoduje utworzenie linku sygnatury dostępu współdzielonego dla obiektu blob przy użyciu ścieżki. Więcej informacji: Tworzenie SAS URI za pomocą ścieżki
Ważne
URI SAS utworzone przy użyciu funkcji CreateShareLinkByPath ma domyślny okres utraty ważności o wartości 24 godzin. Jeśli jest wymagane, aby URI wygasło szybciej lub w innym czasie, należy rozważyć aktualizacje tej formuły. Na przykład poniższy przykładowy kod URI wygasa w ciągu 1 godziny przy użyciu funkcji Now() i DateAdd().
Launch(AzureBlobStorage.CreateShareLinkByPath(ThisItem.Path,{ExpiryTime:DateAdd( Now(),1)}).WebUrl)
Porada
Aby uzyskać więcej informacji na temat konfigurowania Azure Blob Storage w celu publicznego dostępu anonimowego i różnych poziomów dostępu publicznego, przejdź do konfigurowania anonimowego dostępu do odczytu publicznego dla kontenerów i obiektów blob.
Aplikacja może teraz pobrać pliki.
Przetestuj, zapisz, opublikuj i udostępnij aplikację
Uruchom aplikację i sprawdź, czy działa zgodnie z oczekiwaniami. Po zakończeniu testowania upewnij się, że zapisujesz i publikujesz aplikację przed zamknięciem Power Apps Studio. Następnie możesz udostępnić aplikację innym osobom w swojej organizacji lub określić ustawienia dla gości poza organizacją.
Opcje dostosowywania opcjonalnego
W tej sekcji dowiesz się o opcjonalnych i dodatkowych dostosowaniach, które możesz uwzględnić w aplikacji.
Typ multimediów
Można użyć pól Typ multimediów lub Ścieżka dla galerii, aby opcjonalnie wyświetlić zawartość obrazu w odpowiednich formantach. Na przykład przeglądarka plików PDF dla plików PDF, obraz dla obrazów lub też Audio/wideo dla plików dźwiękowych bądź wideo.
Na przykład aby odfiltrować pliki o typie rozszerzenia pliku .pdf, użyj następującej przykładowej formuły.
If(".pdf" in Gallery2.Selected.Path, AzureBlobStorage.GetFileContent(Gallery2.Selected.Id))
Podobnie w celu dostosowania dodanych formantów można użyć różnych typów rozszerzeń plików lub typów multimediów.
Odświeżanie galerii połączonych z Azure Blob Storage
Połączenie z Azure Blob Storage nie odświeża danych w galeriach automatycznie po zaktualizowania danych. Jeśli masz więcej niż jeden kontener, można wybrać drugi kontener, a następnie wybrać wybrany wcześniej kontener ponownie, aby odświeżyć połączoną galerię w celu wyświetlenia zmian.
Inną metodą, którą można rozważyć, jest użycie kolekcji dla pierwszej galerii, a następnie użycie funkcji ClearCollect do odświeżenia kolekcji.
Na przykład następujące formuły umożliwiają zaktualizowanie kolekcji dla listy górnych kontenerów z pierwszej galerii i zaktualizowanie drugiej galerii po wybraniu przycisku przekazywania lub po wybraniu ekranu (właściwość ekranu OnVisible).
Ustaw właściwość Items galerii dla listy kontenerów jako „TopLevelList”.
Dołącz do właściwości przycisku OnSelect :
ClearCollect(TopLevelList, AzureBlobStorage.ListRootFolderV2().value)
Dodaj do właściwości ekranu OnVisible:
ClearCollect(TopLevelList, AzureBlobStorage.ListRootFolderV2().value)
Ograniczenia
Nie można używać Microsoft Excel jako źródło danych, gdy plik jest przechowywany w Azure Blob Storage. Aby użyć programu Excel jako źródła danych, użyj innych łączników magazynu w chmurze (takich jak OneDrive, OneDrive for Business, Google Drive, Dropbox lub Box). Więcej informacji: Łączenie się z magazynem w chmurze z rozwiązania Power Apps
Następne kroki
Projektowanie interfejsu aplikacji