2016-08-18 93 views
0

我想添加OAuth到我的端点后端。作为“你好端点代码穿行”指出,这是足有以下几点:谷歌端点OAuth与Post方法

@ApiMethod(name = "greetings.authed", path = "hellogreeting/authed") 
    public HelloGreeting authedGreeting(User user) { 
    HelloGreeting response = new HelloGreeting("hello " + user.getEmail()); 
    return response; 
} 

但是,如果方法是什么类型后,它包含了身体?我无法将用户和请求正文传递给方法。

如何使用包含请求正文的Post类型方法使用OAuth?

回答

2

就像这样:

@ApiMethod(name = "greetings.authed", path = "hellogreeting/authed") 
    public HelloGreeting authedGreeting(User user, MyObject myObject) { 
    HelloGreeting response = new HelloGreeting("hello " + user.getEmail()); 
    return response; 
} 

User是一种注射型,作为saiyr指出,谷歌的App Engine将注入你。

如果您确实想要在这些作用域之外传递多个对象,则需要创建一个包装类,使这两个对象具有getter/setter属性。

+0

谢谢我刚刚发现AndroidStudio的lint检查器将其标记为错误,但它只是编译好。看起来像一个已知的bug。 – RSai

1

允许的两个用户对象spi.auth.common.Userappengine.api.users.User不会被视为资源参数,因为它们是在运行时注入的。您可以自由地将资源添加到上面有User参数的方法。