我使用了一个sharepoint rest调用,它返回了一个带有odata.id的对象。但是因为javascript使用了。字符作为对象的分隔符,我无法如何选择此属性。
返回的对象
Object
CheckInComment:""
CheckOutType:2
ContentTag:"{CF7867DB-4BF1-4013-BE2C-3ACA5839E5F4},1,2"
CustomizedPageStatus:0
ETag:""{CF7867DB-4BF1-4013-BE2C-3ACA5839E5F4},1""
Exists:true
IrmEnabled:false
Length:"254805"
Level:1
LinkingUri:null
LinkingUrl:""
MajorVersion:1
MinorVersion:0
Name:"nfs.jpg"
ServerRelativeUrl:"/sites/SiteDirectory/Banners/nfs.jpg"
TimeCreated:"2017-03-15T11:16:25Z"
TimeLastModified:"2017-03-15T11:16:25Z"
Title:null
UIVersion:512
UIVersionLabel:"1.0"
UniqueId:"cf7867db-4bf1-4013-be2c-3aca5839e5f4"
odata.editLink:"Web/GetFileByServerRelativeUrl'/sites/SiteDirectory/Banners/nfs.jpg')"
odata.id:"https://one365dev1.sharepoint.com/sites/SiteDirectory/_api/Web/GetFileByServerRelativeUrl('/sites/SiteDirectory/Banners/nfs.jpg')"
odata.type:"SP.File"odata.id:"https://one365dev1.sharepoint.com/sites/SiteDirectory/_api/Web/GetFileByServerRelativeUrl('/sites/SiteDirectory/Banners/nfs.jpg')"
odata.type:"SP.File"
获取对象的代码
$http.get(endpoint).then(function (result) {
var banners = result.data;
deferred.resolve(banners);
console.log(banners.Files[0]);
});
但是因为我做不到
console.log(banners.Files[0].odata.id);
fiddler的帖子返回:
我对如何访问数据毫无头绪。任何帮助将不胜感激。
感谢
答案 0 :(得分:3)
odata.id
中对象的名称为id
而非odata
。
这就是为什么你需要用括号表示法来表示它:banners.Files[0]['odata.id']
。