According to the ES documentation, those 2 search request should get the same results:
GET
http://localhost:9200/app/users/_search?source={\"query\": {
You should URL encode your query in the first case:
http://localhost:9200/app/users/_search?source=%7b%22query%22%3a+%7b%22term%22%3a+%7b%22email%22%3a%22foo%40gmail.com%22%7d%7d%7d