Your SlideShare is downloading. ×
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Introduction to Google Cloud Endpoints: Speed Up Your API Development
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Introduction to Google Cloud Endpoints: Speed Up Your API Development

1,283

Published on

Briefing of intro Google Cloud Endpoints, the technology that can speed up the api development on Google App Engine.

Briefing of intro Google Cloud Endpoints, the technology that can speed up the api development on Google App Engine.

Published in: Technology, Business
0 Comments
12 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,283
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
28
Comments
0
Likes
12
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. GDG Taipei GDG Taipei Google Cloud Endpoints Speed Up Your API Development +Colin Su Google Developer Expert - Cloud Platform
  • 2. GDG Taipei About +Colin Developer Expert, Google Cloud Platform Organizer of GDG Taipei Software Engineer at Tagtoo http://about.me/littleQ
  • 3. GDG Taipei Agenda What's Google Cloud Endpoints? Instance of Google Cloud Endpoints What Else? 1 2 3
  • 4. GDG Taipei Google App Engine Platform-as-a-Service at Google Deploy your application code, take advantage of the infrastructure from Google Easy to build, easy to run, easy to scale Your Code Scalable Service
  • 5. GDG Taipei Build Server side logic on full power, management free App Engine platform Expose standards based REST interfaces with built in Authorization Use auto-generated, strongly typed, mobile optimized client libraries for Android, iOS and web Publish and manage all your API in your project internally without additional works Cloud Endpoints
  • 6. GDG Taipei How It Works
  • 7. GDG Taipei Server-Side (API Service) Support Python Java Go PHP
  • 8. GDG Taipei API Explorer developers.google.com/apis-explorer APIs Discovery Service
  • 9. GDG Taipei API Explorer Testing API made easy
  • 10. GDG Taipei Agenda What's Google Cloud Endpoints? Instance of Google Cloud Endpoints What Else? 1 2 3
  • 11. GDG Taipei Endpoints Progress (Server-side) Define your request and response messages Make a API service Implement your method, bound it with specified req/resp messages Deploy your App Engine project
  • 12. GDG Taipei Let's step through the example of server-side Endpoints
  • 13. GDG Taipei First, I'm going to define the format of input and output first import endpoints from protorpc import messages, remote class StringMsg(messages.Message): """ Your request message model """ msg = messages.StringField(1) class StringListMsg(messages.Message): """ Your response message model """ items = messages.StringField(1, repeated=True) Google Protocol Buffer: https://developers.google.com/protocol-buffers/
  • 14. GDG Taipei then define an API, I decided to call it String API. @endpoints.api( name='stringapi', version='v1', description='Your first string API') class StringApi(remote.Service): ...
  • 15. GDG Taipei Almost done, just need a method to describe what this api does... @endpoints.method( StringMsg, StringListMsg) def split(self, request): msg = request.msg # request will be a StringMsg instance here splitted = msg.split() # SPLIT! one line of code return StringListMsg(items=splitted) # just return an instance of StringListMsg
  • 16. GDG Taipei Yeah, IT WORKS. (not only on my machine)
  • 17. GDG Taipei Choose Your Client Libraries For client library, you got choices: ● Generate your own ● Use Google APIs Client Library (this is the same way how you use other Google APIs)
  • 18. GDG Taipei Generate Your Own Library Endpoints now support generating packaged library for these platform ● Android ● iOS by Using Endpoints Command Line Tool: endpointscfg.py For others, you will need to load clients via Google APIs Client Libraries Generate Client Libraries: https://developers.google.com/appengine/docs/python/endpoints/gen_clients
  • 19. GDG Taipei Google APIs Client Library Programming Languages Support: ● Java ● JavaScript ● Python ● .NET ● PHP ● Objective-C Go, Node.js and Ruby supports are on the way, check out Google APIs Client Library
  • 20. GDG Taipei Agenda What's Google Cloud Endpoints? Instance of Google Cloud Endpoints What Else? 1 2 3
  • 21. GDG Taipei Model-based Endpoints RESTful API are usually bound with models github.com/GoogleCloudPlatform/endpoints-proto-datastore Message-free endpoints development @endpoints.method(MyModelMessage, MyModelMessage, path='mymodel', http_method='POST', name='mymodel.insert') def InsertModel(self, request): my_model = MyModel(attr1=request.attr1, attr2=request.attr2, ...) transformed_model = DoSomething(my_model) return MyModelMessage(attr1=transformed_model.attr1, attr2=transformed_model.attr2, ...)
  • 22. GDG Taipei Endpoints Model from endpoints_proto_datastore.ndb import EndpointsModel class MyModel(EndpointsModel): attr1 = ndb.StringProperty() attr2 = ndb.StringProperty() created = ndb.DateTimeProperty(auto_now_add=True)
  • 23. GDG Taipei Define POST Method for Model @MyModel.method(path='mymodel', http_method='POST', name='mymodel.insert') def MyModelInsert(self, my_model): my_model.put() return my_model
  • 24. GDG Taipei Define Query Method for Model @MyModel.query_method(path='mymodels', name='mymodel.list') def MyModelList(self, query): # filter your query... return query
  • 25. GDG Taipei
  • 26. GDG Taipei Resources http://googlecloudplatform.github.io/ , then search "endpoint" http://github.com/googlecloudplatform?query=endpoint
  • 27. GDG Taipei Highlighted Projects on Github Getting Started: ● Hello Endpoints {Python, Java}: for server-side development ● Hello Endpoints {iOS, Android}: for client libraries usage Getting Advanced: ● appengine-endpoints-angular-todos-python ● appengine-endpoints-tictactoe-python ● appengine-endpoints-tictactoe-java-maven
  • 28. Recent Updates Information About Upcoming Events
  • 29. GDG Taipei GDG Taipei Google Developer Group Taipei (previously GTUG) Speakers wanted for regular meetup, DevFest +GTUGTaipei http://www.gdg-taipei.org/
  • 30. GDG Taipei Google I/O Extended Taipei June 25 evening 8:00 PM ~ 2:00 AM venue is TBA ● Watch Keynote Live together ● Sessions ○ Android, Google Glass ○ Google Cloud Platform ● Food, Drink... Keep your eyes on GDG Taipei pages
  • 31. Interested? Go to http://cloud.google.com for more information +ColinSu @littleq0903 http://about.me/littleQ
  • 32. Google confidential │ Do not distribute cloud.google.com Images by Connie Zhou

×