[ 
https://issues.apache.org/jira/browse/USERGRID-1338?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Russo resolved USERGRID-1338.
-------------------------------------
    Resolution: Fixed

This is fixed such that if you provide + or %2b in a query, it will work fine.  
Double encoding is no longer necessary, and encoding itself is not required. 
The plus symbol is not treated as a literal in the ql value, but the encoded 
%2b is still honored as well. 

> Email addresses or usernames with + character do not appear in search results 
> for users
> ---------------------------------------------------------------------------------------
>
>                 Key: USERGRID-1338
>                 URL: https://issues.apache.org/jira/browse/USERGRID-1338
>             Project: Usergrid
>          Issue Type: Bug
>          Components: Portal, Stack
>    Affects Versions: 2.2.0
>            Reporter: Brandon Shelley
>            Assignee: Michael Russo
>             Fix For: 2.2.0
>
>
> Both the new Edge UI, and API calls to email addresses or usernames with + in 
> the string return no results. It appears the character is being stripped out 
> and replaced with a space.
> Tests, where both username and email address are set to 
> '[email protected]':
> GET https://apibaas-trial.apigee.net/org/app/users/?ql=select * where 
> username='[email protected]'
> GET https://apibaas-trial.apigee.net/org/app/users/?ql=select * where 
> email='[email protected]'
> {code}
> {
>   "action": "get",
>   "params": {
>     "ql": [
>       "select * where email='brandon [email protected]'"
>     ]
>   },
>   "path": "/users",
>   "uri": "https://apibaas-trial.apigee.net/org/app/users";,
>   "entities": [],
>   "timestamp": 1488398745552,
>   "duration": 40,
>   "organization": "org",
>   "applicationName": "global",
>   "count": 0
> }
> {code}
> I tried working around this by url-encoding the + character to %2b, but while 
> the response shows the character correctly, there are still no results found:
> {code}
> "params": {
>     "ql": [
>       "select * where email = '[email protected]'"
>     ]
>   },
> {code}
> There are two workarounds so far:
> 1. access the user entity directly through the / notation:
> [baasurl]/users/[email protected]
> 2. URLencode the '+' char manually in the UI to '%2b'. The ui then encodes 
> this again into '%252b', and can then retrieve the correct entity



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to