簡體   English   中英

從Alfresco的操作按鈕獲取文檔路徑和票證

[英]Get document path and ticket from action button of Alfresco

我正在編寫一個自定義操作按鈕 ,我想進入我的javascript中

(function() {
    YAHOO.Bubbling.fire("registerAction",
    {
        actionName: "onActionVerify",
        fn: function JSC_onActionVerify(record) {
             var ticket = sessiontickets.getTicket();
        }
    });
})();

我單擊操作按鈕的文件的路徑,例如:

/數據字典/電子郵件模板/活動/活動-email.ftl

以及用於身份驗證的票證。

我正在共享客戶端上進行此操作。

兩者都有解決方案嗎?

我的問題沒有重復,因為我想要操作中文件的路徑,而我關於票證的問題是傳遞給Web服務...我所需要的不只是假設為“重復”的問題...

與往常一樣,有不同的選擇:

1)直接從瀏覽器中調用您的外部服務。

在這種情況下,您可以生成票證並將其傳遞給服務。 該服務將使用它來訪問露天。

要生成票證,您可以編寫網頁腳本。 非常簡單的帶有返回會話session.ticket的ftl的web腳本

您無需發送用戶名和密碼,因為您可以將share用作代理:您調用/ share / proxy / alfresco而不是/ alfresco / service,並且該呼叫將自動進行身份驗證。

2)瀏覽器調用Alfresco Web腳本(使用共享作為代理),並且Webscript調用您的外部服務。 該Web腳本可以從會話中獲取票證,並將其傳遞給外部服務。

如您在代碼片段中編寫的那樣,單擊操作時接收事件的函數將接收一個參數:record。

該對象的字段之一是文件的nodeRef。 您為什么認為您需要道路? 直接使用此nodeRef會更容易嗎?

無論如何,如果您確實需要路徑,那么您選擇了選項1),當您調用Web腳本獲取票證時,還傳遞nodeRef並使Web腳本與票證一起返回節點的路徑。 因此,您將致電:

/share/proxy/alfresco/your-custom-webscript?nodeRef=workflow://SpaceStore/xxx...

然后網頁腳本將返回一個json,例如:

{
    "ticket": "TICKET_121321_...",
    "qnamePath": "...."  
} 

如果選擇選項2),則如上例中那樣調用通過nodeRef的Web腳本,該Web腳本將獲取必要的信息並將其傳遞給外部服務。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM