# Accès aux fichiers externes dans BERKIOS CODE

Source : https://docs.berkios.online/studio/acces-fichiers-externes/ · Section : Studio · Documentation officielle BERKIOS (https://docs.berkios.online)


## Autoriser un dossier

```text
quand clic
  autoriser-dossier-externe "$dossier"
  fichier-lire-disque "$dossier/clients.csv" "$contenu"
```

La commande ouvre un sélecteur de dossier système. La variable `$dossier` reçoit le chemin absolu choisi. L'autorisation reste active seulement pendant la session de l'application. L'utilisateur peut choisir Téléchargements, Documents, un disque externe ou un dossier réseau monté par son système.

Les commandes `fichier-lire-disque`, `fichier-ecrire-disque`, `dossier-lister-disque`, `dossier-creer-disque` et `dossier-supprimer-disque` acceptent soit les chemins relatifs au workspace, soit les chemins absolus dans une racine autorisée. Les commandes de suppression refusent la racine autorisée elle-même.

## Lire un lien

```text
quand clic
  fichier-lire-lien "https://example.org/public/rapport.txt" "$contenu"
```

La cible doit servir du texte, être accessible sans identifiants intégrés à l'URL et répondre dans les 15 secondes. La limite de réponse est 10 Mio. En Web, le serveur doit autoriser l'origine BERKIOS via CORS. Pour une API privée, utiliser une action API dédiée avec authentification explicite; ne jamais mettre un secret dans l'URL.

## Différences de plateformes

- **Desktop Tauri** : accès natif après sélection explicite d'un dossier; les autorisations sont temporaires à la session.
- **Web** : aucun chemin arbitraire n'est accessible. Utiliser un sélecteur de fichiers/dossiers compatible navigateur, ou un lien HTTP/HTTPS qui autorise CORS.
- **Applications Flutter générées** : cette version n'ajoute pas encore un sélecteur de dossier natif au runtime Flutter. Les opérations restent limitées au workspace jusqu'à l'intégration d'un plugin de sélection/permissions propre à chaque plateforme.
