Is there a way to use Simple Access API (Developer Key) instead of oAuth2 key with Google Cloud Endpoint?
To create an endpoint, we define a Python class (with any name you want) and connect it to our desired endpoint with api. add_resource , like this: Flask needs to know that this class is an endpoint for our API, and so we pass Resource in with the class definition.
Extra fields in your protorpc
request object that aren't part of the definition are still stored with the request.
If you wanted to use a key
field as a query parameter, you could access it via
request.get_unrecognized_field_info('key')
even if key
is not a field in your message definition.
This is done in users_id_token.py
(the Auth part of the endpoints
library) to allow sending bearer_token
or access_token
as query parameters instead of as header values.
Unfortunately, the nice quota checking and other associated pieces that a "Simple API Access" key gives are not readily available. However, you could issue your own keys and manually check a key against your list and potentially check against quotas that you have defined.
For those looking to use @bossylobster's answer in Java, use the the SO Answer here: Getting raw HTTP Data (Headers, Cookies, etc) in Google Cloud Endpoints
P.S. I tried to make this a comment in @bossylobster's answer, but I don't have the reputation to do that. Feel free to clean up this answer so that other's can follow the path
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With