#url-encoding 3 articles
- A # or % in a file or folder name — the classic …Url APIs cannot reach it, and the old writes quietly save %25gotchas / rest-apiThe classic …ServerRelativeUrl lookups, Files/add(url=), folders/add, moveto and copyto cannot reach it even encoded: 404/400, Exists: false for a folder that exists, and writes that answer 200 but save a literal %25…
- An unencoded # in a $filter value cuts the URL — SharePoint gets half a query and answers 400gotchas / rest-apiThe browser drops everything after # as a fragment, SharePoint gets an unterminated literal and answers 400; guest UPNs (#EXT#) always hit it; & cuts the expression and a raw + arrives as a space, so a valid literal…
- The Microsoft Graph JS client sends $filter values unencoded — & splits the query, # cuts it offgotchas / graph.filter(), .query() and .api('…?…') pass the value into the URL as-is (SDK 3.0.2, also under SPFx MSGraphClientV3): # cuts the query, & splits it and .api() even moves $top into the filter; double apostrophes, then…