2017-06-26 77 views
0

Visual Studio 2015 u2,構建Web擴展,發佈定義上下文菜單的操作處理程序。我希望我的擴展可以在def上操作ACL。從Visual Studio Web擴展操作發佈def ACL

JavaScript客戶端庫中是否存在鉤子? REST API端點exists,但JavaScript API documentation嚴重不完整。具體而言,我找不到可通過VSS.require()獲得的模塊列表,而這似乎是獲得REST API包裝的正確方法。

編輯:好的,模塊名似乎列在here,它來自those sources on Github。幾乎沒有官方,但總比沒有好。

回答

0

沒有文檔,但我可以在https://raw.githubusercontent.com/microsoft/vss-web-extension-sdk/master/typings/vss.d.ts找到類型定義文檔。具體來說,如果您查找「VSS/Security/RestClient」,您可以在API客戶端中找到方法列表。要使用它,你可以做到以下幾點:

VSS.require(["VSS/Service", "VSS/Security/RestClient"], 
    function (Srv, SecAPI) 
    { 
     var SecClient = Srv.getCollectionClient(SecAPI.SecurityHttpClient); 
     SecClient.queryAccessControlLists(NamespaceId, TokenId).then(function(a) 
     { 
       //... 
     }); 
    }); 

空間ID來自一個querySecurityNamespaces()調用,這是目前示數出在我身上,但我可以把它從外部REST客戶合作(奇怪!) 。不知道從哪裏來的TokenId。也許這是發佈def ID。

編輯:作品像一個魅力this monkey-patch到位。