SDK doesn't handle Unicode control characters.
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 35/100
Piste de recherche
Commencez par les constructeurs de GetMetadataArg et l'appel à DbxUserFilesRequests.getMetadata indiqués dans le stack trace, puis suivez la validation du motif de chemin. Reproduisez le chemin U+2028 non échappé et comparez-le à l'entrée échappée ; c'est terminé lorsque le Java SDK accepte le chemin Unicode réel et l'envoie à l'API sans traiter le texte d'échappement comme une séquence littérale de barre oblique inverse.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Basically I have a code that does this:
private final DbxUserFilesRequests files;
@SneakyThrows
public Metadata getMetadata(String path) {
return files.getMetadata(path);
}
This works for normal paths that don't contain control characters.
However, if you supply path that contains the Unicode Control Characters that aren't escaped:
/SomeFolder/acces
s_token.txt
It spits out this issue:
java.lang.IllegalArgumentException: String 'path' does not match pattern
at com.dropbox.core.v2.files.GetMetadataArg.<init>(GetMetadataArg.java:58)
at com.dropbox.core.v2.files.GetMetadataArg.<init>(GetMetadataArg.java:80)
at com.dropbox.core.v2.files.DbxUserFilesRequests.getMetadata(DbxUserFilesRequests.java:1602)
But if you escape the path from unicode characters like this:
acces\u2028s_token.txt
It seems that the library escapes the backslash character, and causes the API to return the Malformed path response.
"error": {
".tag": "path",
"path": {
".tag": "malformed_path"
}
}
Unfortunately, I don't really have a choice in renaming the file. Is there a solution we can have to handle the unicode control? Like another method that allows us to supply a string that won't be processed by the SDK?
I know from cURL, it's possible to use the escaped form of the unicode character and get the metadata. However, it's just not a choice I have from the java SDK since it won't do it for me, and it doesn't like the escaped version of unicode.
- Langage dominant
- Java
- Étoiles
- 628
- Forks
- 463
- Merge moyen
- 13 h 15 min
- PR mergées (30 j)
- 13
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de dropbox/dropbox-sdk-java
-
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
dropbox/dropbox-sdk-java#536 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
dropbox/dropbox-sdk-java#560 · 6 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
dropbox/dropbox-sdk-java#550 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 15/100
dropbox/dropbox-sdk-java#542 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
ListFolderArg is package-privateOuverte
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
dropbox/dropbox-sdk-java#535 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de dropbox/dropbox-sdk-java
Issues similaires
-
approved bug
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
checkstyle/checkstyle#21981 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
[lake/iceberg] Reserved write-mode properties can be set and reset through their `iceberg.` keyPeut-être pris @aphenix-r7 l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 Moins d'une heure Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
MCModderAnchor/TACZ#758 ·
-
agent-java community triage
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
elastic/apm-agent-java#4594 ·
Les mainteneurs répondent en général sous 1 jour