Javascript 如何通过单击XPage上的按钮将附件内容读入数组或字符串?

Javascript 如何通过单击XPage上的按钮将附件内容读入数组或字符串?,javascript,xmlhttprequest,xpages,Javascript,Xmlhttprequest,Xpages,我有一个带有文件上传/下载控件的XPage,可以显示我的附件。我需要通过单击按钮将第一个文件附件名未知/随机的内容读入字符串变量或数组 我不确定XMLHttpRequests是否可以在XPage上工作,或者是否有标准的XPages控件来实现这一点 我只需要阅读内容。用户不需要直接与附件交互选择/保存/其他用户界面操作。您需要澄清“第一”的含义:最早的、先附加的、字母表中的第一?Domino不能保证序列。您可以在evaluate语句中使用@AttachmentNames。然后,您可以使用该名称,通

我有一个带有文件上传/下载控件的XPage,可以显示我的附件。我需要通过单击按钮将第一个文件附件名未知/随机的内容读入字符串变量或数组

我不确定XMLHttpRequests是否可以在XPage上工作,或者是否有标准的XPages控件来实现这一点


我只需要阅读内容。用户不需要直接与附件交互选择/保存/其他用户界面操作。

您需要澄清“第一”的含义:最早的、先附加的、字母表中的第一?Domino不能保证序列。您可以在evaluate语句中使用@AttachmentNames。然后,您可以使用该名称,通过rest调用使用以下语法从浏览器直接访问该附件:

https://[yourserver]/[application.nsf]/[viewname | 0]/[UNID | ViewKey]/$File/[AttachmentName]?打开

更多细节见附件


如果你想在服务器端处理这个问题,那么你需要使用document.

你需要澄清first的含义:最早的,先附加的,字母表中的第一?Domino不能保证序列。您可以在evaluate语句中使用@AttachmentNames。然后,您可以使用该名称,通过rest调用使用以下语法从浏览器直接访问该附件:

https://[yourserver]/[application.nsf]/[viewname | 0]/[UNID | ViewKey]/$File/[AttachmentName]?打开

更多细节见附件

如果要在服务器端处理此问题,请使用document..

工作示例:

importPackage(java.net);
importPackage(java.io);

var valString:String = "";
var nrt:NotesRichTextItem=document1.getDocument().getFirstItem('Body');

if (nrt!=null){
    var eos:java.util.Vector = nrt.getEmbeddedObjects();
    if (!eos.isEmpty()) {
        var eo:NotesEmbeddedObject = eos.get(0);
        var inputReader:BufferedReader = new BufferedReader(new InputStreamReader(eo.getInputStream(), "UTF-16"));
        while ((inputLine = inputReader.readLine()) != null) {
            valString+=inputLine + "<br>";
        }
        if (inputReader != null){inputReader.close();}
        eo.recycle();
    }
}

return valString;
工作示例:

importPackage(java.net);
importPackage(java.io);

var valString:String = "";
var nrt:NotesRichTextItem=document1.getDocument().getFirstItem('Body');

if (nrt!=null){
    var eos:java.util.Vector = nrt.getEmbeddedObjects();
    if (!eos.isEmpty()) {
        var eo:NotesEmbeddedObject = eos.get(0);
        var inputReader:BufferedReader = new BufferedReader(new InputStreamReader(eo.getInputStream(), "UTF-16"));
        while ((inputLine = inputReader.readLine()) != null) {
            valString+=inputLine + "<br>";
        }
        if (inputReader != null){inputReader.close();}
        eo.recycle();
    }
}

return valString;

好吧,让我们假设文档只有一个附件,我不知道它的名称。通过单击按钮,我想将该附件的全部内容读取到scopeVariable或arraydocument中。getEmbeddedObjects提供了附件,在EmbeddedObjects中有一个流方法来获取内容。好吧,假设该文档只有一个附件,我不知道它的名称。通过单击按钮,我希望将该附件的全部内容读取到scopeVariable或arraydocument中。getEmbeddedObjects为您提供附件,在EmbeddedObjects中,有一个stream方法来获取内容