Requisiti di formattazione url
A partire da Windows 7, le incoerenze rimangono nella gestione e nell'analisi degli URL. In questo argomento viene fornita una guida limitata all'esplorazione delle incoerenze nei formati url di file.
Questo argomento è organizzato come segue:
- Formati URL in uso
- Direzione barra, stella finale e sensibilità barra finale
- Formati url per API e query
- Argomenti correlati
Formati URL in uso
I protocolli di terze parti sono responsabili della definizione del formato URL e della definizione delle query in modo conforme ai propri standard. Ad esempio, Microsoft Outlook supporta i nomi di cartelle con caratteri arbitrari, inclusi quelli non validi negli URL, ad esempio il "?"
carattere . Il gestore del protocollo MAPI esegue la propria codifica URL degli URL. Di conseguenza, gli archivi "%3F"
di indici anziché "?"
, e Outlook devono tenere conto di questa situazione durante la creazione di query.
I diversi formati sono elencati nella tabella seguente e vengono assegnati a ognuno un identificatore di lettera per fare riferimento a tali formati più avanti in questo argomento.
ID | URL del file locale o remoto | Esempio |
---|---|---|
A | Locale | file:///c:\test\example\ |
B | Locale | file:c:/test/example/ |
C | Locale | c:\test\example\ |
D | Remoto | file:///\\server\share\ |
E | Remoto | file://server/share/ |
F | Remoto | \\server\share\ |
Direzione barra, stella finale e sensibilità barra finale
In Windows Search non esiste in gran parte alcuna sensibilità alla direzione della barra. Se il formato c:\test\example
viene accettato, viene accettato anche c:/test/example. Tuttavia, anche se SCOPE è in genere insensibile alla direzione della barra, è sensibile alla direzione della barra nel caso del formato URL remoto F. Di conseguenza, Scope = '//server/share'
non funziona.
L'unica API sensibile alle stelle finali e distingue c:\test\
tra e c:\test\*
è ISearchCrawlScopeManager. Se è presente una regola di esclusione per c:\test\*
, la directory c:\test
URL stessa verrà comunque indicizzata. Tuttavia, se l'URL di esclusione è c:\test\
, la directory c:\test
URL stessa non verrà indicizzata.
Esistono due posizioni in cui Windows Search è sensibile alle barre finali: ItemUrl e Path query. Se è presente una directory c:\test
, Windows Search considera c:\test\
in modo diverso i c:\test
predicati come path = 'c:\test'
e System.ItemUrl = 'c:\test'
. Ad esempio, il predicato path='file:c:/test'
corrisponde alla directory c:\test
, ma path='file:c:/test/'
non a causa della barra finale.
Formati url per API e query
I formati di URL dei file locali accettati dalle API e dalle query selezionate sono elencati nella tabella seguente. I formati sono associati a una lettera (da A a F), il cui significato è stato indicato nella sezione "URL Formats in Use" in precedenza in questo argomento.
API o query | Formato A | Formato B | Formato C |
---|---|---|---|
ISearchCrawlScopeManager | S | N | S |
IGatherNotifyInline::OnDataChange | S | S | S |
ISearchCatalogManager::ReindexMatchingURLs | S | S | S |
ISearchCatalogManager::ReindexSearchRoot | S | N | N |
ISearchCatalogManager2::P rioritizeMatchingURLs | S | S | S |
Ambito= | N | S | S |
Directory= | N | S | S |
ItemUrl= | N | S | S |
Path= | N | S | S |
Nella tabella seguente sono elencati i formati di URL di file remoti accettati dalle query selezionate.
Query | Formato D | Formato E | Formato F |
---|---|---|---|
ISearchCrawlScopeManager | N/D | N/D | N/D |
IGatherNotifyInline::OnDataChange | N/D | N/D | N/D |
ISearchCatalogManager::ReindexMatchingURLs | N/D | N/D | N/D |
ISearchCatalogManager::ReindexSearchRoot | N/D | N/D | N/D |
ISearchCatalogManager2::P rioritizeMatchingURLs | N/D | N/D | N/D |
Ambito= | S | S | S |
Directory= | S | S | S |
ItemUrl= | S | S | S |
Path= | S | S | S |
Argomenti correlati