Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Alfresco Community 5.2上使用自定义webscript上载文件大小限制_Alfresco_Alfresco Share_Alfresco Webscripts - Fatal编程技术网

在Alfresco Community 5.2上使用自定义webscript上载文件大小限制

在Alfresco Community 5.2上使用自定义webscript上载文件大小限制,alfresco,alfresco-share,alfresco-webscripts,Alfresco,Alfresco Share,Alfresco Webscripts,我需要帮助上传文件内容回到AlfrescoCommunity5.2通过共享javascript。 如果目标节点已存在,我将上载文档的新版本 我不能使用api/upload web服务,因为我还需要在noderef上执行一些操作,并且我有一个需要转换的base64文件内容 所以我写了一个新的webscript,它工作得很好,至少当我上传小于3MB的文档时 这是代码 Alfresco.util.Ajax.request({ method: Alfresco.util.Ajax.PO

我需要帮助上传文件内容回到AlfrescoCommunity5.2通过共享javascript。 如果目标节点已存在,我将上载文档的新版本

我不能使用api/upload web服务,因为我还需要在noderef上执行一些操作,并且我有一个需要转换的base64文件内容

所以我写了一个新的webscript,它工作得很好,至少当我上传小于3MB的文档时

这是代码

 Alfresco.util.Ajax.request({
        method: Alfresco.util.Ajax.POST,
        dataObj: {
            bytes: response.bytes,
            digestAlgorithm: response.digestAlgorithm,
            mimeType: response.mimeType.mimeTypeString,
            name: response.name,
            nodeRef: this.nodeRef,
            signatureLevel: this.signatureLevel
        },
        url: thisClass.urlAlfrescoService + "myOrg/myPackage/uploadDocument",

        successCallback: {
            fn: thisClass._successOnUploadContent,
            scope: this
        },

        failureCallback: {
            fn: thisClass._errorOnUploadContent,
            scope: this
        },

        scope: this,
        noReloadOnAuthFailure: true
    });
我是否错过了一些增加最大上传文件大小的选项? 我试着用拖放的方式正常上传文件,效果很好

问题是当文件>=3MB时,webscript后面的java类不会收到任何字节

使现代化 经过一些研究,我发现可能是数据如何通过POST传递的问题,因为应用程序/x-www-form-urlencoded而不是multipart/form数据,但我找不到在ajax请求中指定请求内容类型的方法

解决方案
问题是应用程序/x-www-form-urlencoded而不是多部分/form数据,我使用了如上所述的fetch-POST请求,但ajax请求解决方案也很好。

上周,我在Alfresco 5.0.2.5上遇到了与Alfresco ajax请求类似的问题,我使用了jquery的ajax调用,它对我起到了作用

 $.ajax({
        url: Alfresco.constants.PROXY_URI + "your_web_script",
        type: "POST",
        data: dataFromFiles,
        mimeType: "multipart/form-data",
        contentType: false,
        cache: false,
        processData: false,
        dataType: "text",
        success: function(data, textStatus, jqXHR) {

        },
        error: function(jqXHR, textStatus, errorThrown) {

        }
    });
参考链接:


希望这对您有所帮助。

我曾经使用过fetch POST request see,但基本上是相同的概念。问题是应用程序/x-www-form-urlencoded而不是多部分/form数据