我有一个routes
,其中包含以下路线,
GET / com.de.controllers.Application.index()
GET /facebook/auth com.de.authenticators.FacebookAuthenticator.auth()
GET /assets/*file controllers.Assets.versioned(path="/public", file: Asset)
我尝试使用反向路由从我的控制器调用这些路由。我这样做了,
public Result auth() {
String verifier = request().getQueryString("oauth_verifier");
if (Strings.isNullOrEmpty(verifier)) {
String url = com.de.authenticators.FacebookAuthenticator.auth().absoluteURL(request());
RequestToken requestToken = FACEBOOK.retrieveRequestToken(url);
saveSessionTokenPair(requestToken);
return redirect(FACEBOOK.redirectUrl(requestToken.token));
} else {
RequestToken requestToken = getSessionTokenPair().get();
RequestToken accessToken = FACEBOOK.retrieveAccessToken(requestToken, verifier);
saveSessionTokenPair(accessToken);
return null; //redirect(FacebookAuthenticator.homeTimeline());
}
}
但是,
String url = com.de.authenticators.FacebookAuthenticator.auth().absoluteURL(request());
在致电routes
时给我一个编译错误。我该如何解决这个问题?反向路由的正确方法是什么?