0
ユーザー認証でAPIメソッドを保護したい。 Androidアプリに最適なのは、私が使っているfirebase認証のようでした。 ここで、APIベースのメソッドをretrofitを使って呼び出すか、認証されたfirebaseユーザーと一緒にカールする方法を教えてください。今、それがどのようにGoogle Cloud Endpoints v2 with firebase and retrofit
@ApiMethod(
path = "firebase_user",
httpMethod = ApiMethod.HttpMethod.GET,
authenticators = {EspAuthenticator.class},
issuerAudiences = {@ApiIssuerAudience(name = "firebase", audiences = {PROJECT_ID})}
)
public Translation getUserEmailFirebase(User user) throws UnauthorizedException {
if (user == null) {
throw new UnauthorizedException("Invalid credentials");
}
return new Translation();
}
と呼ばれるべきである。
私はAPIメソッド次hereからの例を踏襲して、コメントを追加しましたか?私は
curl \
-H "Authorization: my-firebase-user-token-id" \
https://my-api-link.appspot.com/_ah/api/something/v1/firebase_user
を試みたが、私はトークンとして "Bearer " + token
APIメソッドのparamに @Header("Authorization") String token
を追加し、コードにしなければならなかったの改装を使用し
{
"error": {
"errors": [
{
"domain": "global",
"reason": "required",
"message": "Invalid credentials"
}
],
"code": 401,
"message": "Invalid credentials"
}
}
是非。認証ヘッダーの外観はどうですか?彼らはアンドロイドのためのドキュメントやAPIのlibのどこにでもアルファにはそれを言及していない... –