Two things seems wrong in your code,
Folder Url should be 'attachment/test/1'
Syntax for reading response should be data.d.Files.results[i].Name
Try below code. ( Tested & Working )
<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.0.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
getFilesFolders();
});
function getFilesFolders() {
var folderUrl = 'attachment/test/1';
var webUrl = _spPageContextInfo.webAbsoluteUrl;
var requestHeaders = { "accept": "application/json;odata=verbose" };
$.ajax({
url: webUrl + "/_api/web/GetFolderByServerRelativeUrl('" + folderUrl + "')?$expand=Folders,Files",
contentType: "application/json;odata=verbose",
headers: requestHeaders,
success: onSuccess,
async: false,
error: onError
}); function onSuccess(data, request) {
for (var i = 0; i < data.d.Files.results.length; i++)
{
console.log(data.d.Files.results[i].Name);
}
for (var i = 0; i < data.d.Folders.results.length; i++) {
console.log(data.d.Folders.results[i].Name);
}
} function onError(error) {
alert("Error occurred.");
}
}
</script>