Я пытаюсь создать защиту xsrf для своих удаленных сервисов в коде GWT
static {
CommonUtils.setProperServiceEntryPoint((ServiceDefTarget) ourInstance);
((XsrfTokenServiceAsync)ourInstance).getNewXsrfToken(new AsyncCallback<XsrfToken>() {
public void onSuccess(XsrfToken token) {
CommonUtils.consoleInfo("token success");
CommonRemoteServiceAsync rpc = (CommonRemoteServiceAsync)GWT.create(CommonRemoteService.class);
((HasRpcToken) rpc).setRpcToken(token);
// WHAT SHOULD I WRITE HERE ???
}
public void onFailure(Throwable caught) {
CommonUtils.consoleInfo("token Failure");
try {
throw caught;
} catch (RpcTokenException e) {
// Can be thrown for several reasons:
// - duplicate session cookie, which may be a sign of a cookie
// overwrite attack
// - XSRF token cannot be generated because session cookie isn't
// present
} catch (Throwable e) {
// unexpected
}
}});
}
Но я не понимаю, что мне писать в метод getNewXsrfToken :: onSuccess.В документации вызывается метод doStuff.
rpc.doStuff(new AsyncCallback<Void>() {
// ...
});
Я понимаю, каким должен быть мой пользовательский метод в службе, но если у меня есть более 50 методов в моей асинхронной службе.Должен ли я позвонить им всем?