Introduction
This article explores with the REST API a quite simple and straightforward way to use a User ID to get the user's Title and Email for SharePoint 2013 and apps for SharePoint.
Use /_api/web/getuserbyid(ID) to get the user field in the response data, we have an “AuthorId” to get the user's Title, Email and so on.
Step 1: Navigate to your SharePoint 2013 site and create a Wiki Page or a Web Parts page.
Step 2: The process to add your JavaScript code is quite straightforward:
Edit the page, go to the “Insert” tab in the Ribbon and click the “Web Part” option. In the “Web Parts” picker area, go to the “Media and Content” category, select the “Script Editor” Web Part and press the "Add button".
Step 3: Once the Web Part is inserted into the page, you will see an "EDIT SNIPPET" link click. You can insert the HTML and/or JavaScript code into the dialog.
var userid = _spPageContextInfo.userId;
var requestUri = _spPageContextInfo.webAbsoluteUrl + "/_api/web/getuserbyid(" + userid + ")";
var requestHeaders = { "accept": "application/json;odata=verbose" };
$.ajax({
url: requestUri,
contentType: "application/json;odata=verbose",
headers: requestHeaders,
success: onSuccess,
error: onError
});
function onSuccess(data, request) {
var Logg = data.d;
//get login name
var loginName = Logg.LoginName.split('|')[1];
alert(loginName);
//get display name
alert(Logg.Title);
}
function onError(error) {
alert("error");
}
In the code above, we'll get the author id from the list. By passing the author id into the GetUserBuId() method, it will return the user in raw format like "I:O#.f|xxxx|[email protected]". We can get the login name by splitting the output.