RESTFul Service Framework for AppEngine

混江龙づ霸主 提交于 2019-11-28 03:12:46

You might wish to consider using Google Cloud Endpoints, which was announced as a trusted tester feature for App Engine at Google I/O, and is now available to everyone. With Endpoints, you annotate simple Java (or Python) classes and methods to describe your API. For example, this is a simple class to get and retrieve a list of high scores from a Tic Tac Toe game:

@Api(name = "tictactoe")
public class ScoreEndpoint {
  @ApiMethod(name = "scores.get")
  public Score get(@Named("id") String id) {
    PersistenceManager pm = getPersistenceManager();
    Score score = pm.getObjectById(Score.class, id);
    pm.close();
    return score;
  }

  @ApiMethod(name = "scores.list")
  public List<Score> list() {
    PersistenceManager pm = getPersistenceManager();
    Query query = pm.newQuery(Score.class);
    return (List<Score>) pm.newQuery(query).execute();
  }
}

Features

  • Support for Java and Python runtimes
  • Built on Google's API infrastructure - it works with many of the same tools and libraries used for Google's own APIs, such as the APIs Explorer and APIs Console
  • Automatically-generated, statically-typed client libraries for Android and iOS - these libraries are using the same Google-authored Java and Objective-C libraries you would use to access other Google-provided APIs such as the Calendar API
  • Dynamically-typed JS client library - again, the same library you use to access other Google-provided APIs in JS
  • Built in support for OAuth 2
  • Integration with the Google Plugin for Eclipse - this allows you to automatically create an API based on a model, or an App Engine application to back an existing Android app
  • Support for local development - you can build and test your API using the App Engine development environment, just as with other App Engine features

Learn More

Check out the documentation for more details on using Endpoints.

You can also watch several talks from Google I/O:

I've been using spring restful services with lots of luck on GAE and have been consuming it with Android Native, Phonegap and IOS clients with no issues whatsoever.

http://blog.springsource.org/2009/03/08/rest-in-spring-3-mvc/

I respect your decision not to use Restlet, but for other browsers of this thread, I have been able to make Post work with Android/Restlet/GAE - and my knowledge and programming skills are fairly limited. I had some problems getting the Restlet Edition for Javascript to work correctly (it is still in early development), but Restlet for Android posed no problems that I can recall.

ChrLipp

I would also like to recommend Restlet, see also other threads here

Restlet has an edition for GAE, see http://wiki.restlet.org/docs_2.0/13-restlet/275-restlet/252-restlet.html

But there are also other libraries which come with special editions for GAE, for example: http://code.google.com/p/xydra/wiki/RestLess

If you are looking at GAE, one choice you may consider is duyproject. It is know for it's openid library, but it also has a very light weight library for REST servlets. And with GAE you want to keep all the libraries light so you don't go over the byte limit.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!