diff --git a/interfaces/kits/js/file_share/grant_uri_permission.cpp b/interfaces/kits/js/file_share/grant_uri_permission.cpp index 76529f26a4819fd8521de603a79eb3764e841a8c..a48614cfc80cd47486ed7078ddc5dafbff97df12 100644 --- a/interfaces/kits/js/file_share/grant_uri_permission.cpp +++ b/interfaces/kits/js/file_share/grant_uri_permission.cpp @@ -47,8 +47,28 @@ namespace ModuleFileShare { return Security::AccessToken::TokenIdKit::IsSystemAppByFullTokenID(fullTokenId); } + static string DealWithUriWithName(string str) + { + static uint32_t MEET_COUNT = 6; + uint32_t count = 0; + uint32_t index; + for (index = 0; index < str.length(); index++) { + if (str[index] == '/') { + count++; + } + if (count == MEET_COUNT) { + break; + } + } + if (count == MEET_COUNT) { + str = str.substr(0, index); + } + return str; + } + static string GetIdFromUri(string uri) { + uri = DealWithUriWithName(uri); string rowNum = ""; size_t pos = uri.rfind('/'); if (pos != string::npos) {