title: How do I protect my AJAX services?
body: <p>Right now I'm working on a service that handles reviews/recommendations of local restaurants overlayed on Google Maps. Basically Yelp, but restricted to a certain niche. Anyhow, since I don't want to have to load every location and review at once, I'm finally getting into using jQuery and AJAX calls.</p>
  
  <p>The question I have is: How do I prevent other people from 'scraping' data from my ajax scripts on the server?</p>
  
  <p>The main map/location info functionality needs to be public, in that users should not have to log in to use the application, so it may simply boil down to making it <em>difficult</em> to scrape. I'm hoping that one of you AJAX veteran out there can point me in the direction of a better idea, or some 'best practices' docs that I haven't been able to find yet.</p>
  
  <p>So far all I've been able to come up with is:</p>
  
  <ul>
  <li>The user-facing scripts open a short-lived session on the server and the AJAX calls will not run without an active session.</li>
  <li>Send some sort of access key along with the application code and require that in all of the AJAX calls. But not sure how to best implement this in a way that's not trivially easy to get around.</li>
  </ul>