Zebbeni
Zebbeni

Reputation: 325

Token error on getting started tutorial with Node.js and Google Cloud datastore

I'm building a webapp with google appengine, node.js and socket.io, and I'm currently trying to set up a google compute instance to use the google cloud datastore api following this tutorial. So far, I've completed steps 1 and 2, but when running the downloaded adams.js file locally, I get this:

Error: No access or refresh token is set.

Stuff I've tried:

that command gives me this:

<html>
<head><title>301 Moved Permanently</title></head>
<body bgcolor="white">
<center><h1>301 Moved Permanently</h1></center>
<hr><center>nginx</center>
</body>
</html>

so I'm definitely missing a token, but for some reason I cannot figure out how I am supposed to be getting it. Or where I need to store it when my app is deployed and wants to access the API online. It feels like this should be a really easy thing to find, but for some reason all the documentation I'm reading is leading me into walls. Any help would be awesome.

Upvotes: 1

Views: 297

Answers (1)

Ed Davisson
Ed Davisson

Reputation: 2927

If your code is running on a Google Compute Instance, and the instance has the correct scopes, you don't need to set any environment variables.

You can confirm the scopes by looking at the instance in the Developers Console or by asking the metadata server:

curl http://metadata/computeMetadata/v1/instance/service-accounts/default/scopes -H "Metadata-Flavor: Google"

To use Cloud Datastore, both the datastore and userinfo.email scopes must be present.

Upvotes: 2

Related Questions