L’oggetto UserProfile contiene tutte le informazioni degli utenti di Sharepoint, come ad esempio l’email, il numero di telefono e il ruolo di utente.
Sharepoint mette a disposizione alcune API Rest che consentono di ottenere tutte le informazioni legate agli utenti.
In particolare, è possibile chiamare l’API GetPropertiesFor per ottenere tutte le proprietà legate all’utente. La chiamata completa è la seguente:
[BASE_SP_URL]/_api/SP.UserProfiles.PeopleManager/GetPropertiesFor
dove ovviamentee BASE_SP_URL è l’url del portale Sharepoint a cui si vuole accedere.
La chiamata può essere effettuata utilizzando, ad esempio, la funzione $.ajax() di jQuery, impostando eventualmente la chiamata come sincrona o come asincrona.
Qui è possibile scaricare un semplice client REST che consente di ottenere le proprietà dell’oggetto UserProperties.
Di seguito un esempio di Angular Js Factory per interrogare le le userproperties:
myapp.factory('GetUserId', function ($http, $q) {
return {
GetUserIDDetails: function (userName) {
var deferred = $q.defer();
UpdateFormDigest(_spPageContextInfo.webServerRelativeUrl, _spFormDigestRefreshInterval);
var accountName = userName;
return $.ajax({
method: 'GET',
url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/siteusers(@v)?@v='" + encodeURIComponent(accountName) + "'",
headers: { "Accept": "application/json;odata=verbose" }
});
}
};
});
Proprietà
Tutte le proprietà dell’oggetto UserProperties sono visualizzabili qui.