AUTH di base con i servizi di riposo di RestyGWT?
Domanda
Come posso impostare l'ID utente di Autenzione di base e la password quando si utilizza un RestyGWT Servizi di riposo ?
the Guida per l'utente di RestyGWT Descrive come impostare l'ID utente ePassword utilizzata nell'autenticazione di base per il RestyGWT Rest API Ma non ho trovato documenti che descrivono come fare AUTH di base con il RestyGWT Servizi di riposo
Sto usando RESTINYGWT V1.2
final Map<String, String> headers = new HashMap<String, String>();
headers.put("Authorization", "Basic anJvYmPpbnKAbGl4ZXByb2N4c3OuZ29tOmpyb2JiaW6z");
final Resource workflowResource = new Resource("", headers);
((RestServiceProxy)workflowService).setResource(workflowResource);
. Soluzione 2
Penso che l'esempio del codice fornito nella domanda dovrebbe funzionare.Ho trovato un'altra persona sperimentare problemi aggiungendo un'intestazione personalizzata a un servizio di restygwt come descritto in Questo post al RestyGWT Group e Questo bug a GitHub. .
Come soluzione temporanea, sto usando @headerparam e passando l'intestazione di autorizzazione codificata BASE64 attraverso la chiamata del metodo RESTService.
public void getRestData(@HeaderParam("Authorization") String authHeader, MethodCallback<List<Workflow>> callback);
. Altri suggerimenti
Lo faccio usando un dispatcherFilter, all'interno del metodo del filtro.
@Override
public boolean filter(Method method, RequestBuilder builder)
{
....
builder.setHeader(KEY, value);
....
return true;
}
.