Go Premium for a chance to win a PS4. Enter to Win


Gmail inbox auto update, is this AJAX? How could I do this?

Posted on 2011-02-15
Medium Priority
Last Modified: 2012-05-11
In Gmail once you received a new email it will update your inbox page with the new email without you reloading the page. How is Gmail doing this? How does Gmail knows I have a new email? From what I know AJAX only works if there's an action from a user, is this correct?

Please provide a sample code / a link to a tutorial on how I could do this.
Question by:Bandai2
LVL 83

Expert Comment

ID: 34899328
different method if you're trying to do this using IMAP, POP or HTTP

>From what I know AJAX only works if there's an action from a user, is this correct?
No, you can do an ajax call using a timer, at page load and so on


Author Comment

ID: 34899548
>different method if you're trying to do this using IMAP, POP or HTTP

I should have been more clear, I'm not doing this to access emails. I just want the functionality of Gmail where it knows there is new data for the inbox. In my case instead of emails, my data would come from the database. I need to update the page as soon as there is new data saved on the database.

>No, you can do an ajax call using a timer, at page load and so on

Isn't this a resource heavy solution for the user? Is this how Gmail is doing it? A non stop timer?

Expert Comment

ID: 34899553
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.


Expert Comment

ID: 34899571
My response was very terse I hit submit before explaining it. So much of the GMAIL functionallity is exposed to developers through Google API where you can get into the code of nearly everything Google has. If you follow my link and start searching and exploring in there you will find everything you need.
LVL 83

Accepted Solution

leakim971 earned 2000 total points
ID: 34899639
The term is << pulling >>, check this (HTTP Pull) : http://www.infoq.com/news/2007/07/pushvspull
At the opposite, << pushing >> same page (Reverse AJAX)

you have good info on the page.
setInterval on the client : http://www.w3schools.com/jsref/met_win_setinterval.asp
comet and ajax push on the server : http://www.ape-project.org/ and http://en.wikipedia.org/wiki/Comet_(programming)
LVL 11

Expert Comment

ID: 34904122
Hi, You have to use the ajax control like update panel, and set its target control to refresh button. It is working like gmail inbox. Try this otherwise I will give you a video tutorials for ajax. ok

Featured Post

Important Lessons on Recovering from Petya

In their most recent webinar, Skyport Systems explores ways to isolate and protect critical databases to keep the core of your company safe from harm.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When crafting your “Why Us” page, there are a plethora of pitfalls to avoid. Follow these five tips, and you’ll be well on your way to creating an effective page.
Without even knowing it, most of us are using web applications on a daily basis.  In fact, Gmail and Yahoo email, Twitter, Facebook, and eBay are used by most of us daily—and they are web applications. We generally confuse these web applications to…
Viewers will get an overview of the benefits and risks of using Bitcoin to accept payments. What Bitcoin is: Legality: Risks: Benefits: Which businesses are best suited?: Other things you should know: How to get started:
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…
Suggested Courses

782 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question