React-native-windows ошибка несанкционированного доступа - PullRequest
0 голосов
/ 03 июня 2019

Я использую React-native-windows для создания Windows-версии приложения реакции, и я пытаюсь загрузить файл, а затем создать данные base64 для этого файла.

Я использую @ foqum / реагировать-native-document-picker для загрузки файла.Он работает нормально.

И я использую реагировать-родной-фс , чтобы получить данные base64 загруженного файла.

const res = await DocumentPicker.pick({
                    type: [DocumentPicker.types.allFiles],
                });
                console.log(
                    res.uri,
                    res.type, // mime type
                    res.name,
                    res.size
                );
                var url = res.uri;

                RNFS.readFile(url, 'base64')
                    .then((result) => {
                        Alert.alert("", "File Uploaded successfully.");

                    })
                    .catch((err) => {
                        Alert.alert("", "File not uploaded.")
                    });
            } catch (err) {
                if (DocumentPicker.isCancel(err)) {
                    // User cancelled the picker, exit any dialogs or menus and move on
                } else {
                    Alert.alert("", "File not uploaded.")
                    throw err;
                }
            }

После загрузки файла вызывается RNFS.readFile, эта функция вызывает функцию Windows, см. прикрепленное изображение, но эта функция не может прочитать загруженный файл.

using (var file = new FileStream(filepath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite) ) 

Получена ошибка неавторизованного доступа.

Я добавил все необходимые разрешения в package.appxmanifest файле.

<uap:Capability Name="picturesLibrary" /> 
<uap:Capability Name="videosLibrary" />
<rescap:Capability Name="broadFileSystemAccess" />

, но все еще получаю ошибку несанкционированного доступа.

Пожалуйста, см. Прикрепленное изображение.

enter image description here

Я также пытался StorageFile, но эта строка также выдает ту же ошибку.

StorageFile folder = await StorageFile.GetFileFromPathAsync(filepath);

Может кто-нибудь знает, как решить эту ошибку.

...