Javascript 如何从一个url检索文件并将其发布到另一个url?

Javascript 如何从一个url检索文件并将其发布到另一个url?,javascript,jquery,struts2,Javascript,Jquery,Struts2,我正在尝试创建一个javascript api,从服务器端(比如a)获取一个word文档作为输入,并将其发布到另一个api(比如B),该api将其转换为pdf。我这样做的原因是,我可以对任何A使用对B的调用,而不必修改每个A API(有多个As提供word文档) 这就是我到目前为止所做的。问题是当我打电话给B时,我无法获取我发送的文件 这是我的密码 对服务器的javascript调用 $("#downloadFile").click(function(){ $.ajax({

我正在尝试创建一个javascript api,从服务器端(比如a)获取一个word文档作为输入,并将其发布到另一个api(比如B),该api将其转换为pdf。我这样做的原因是,我可以对任何A使用对B的调用,而不必修改每个A API(有多个As提供word文档)

这就是我到目前为止所做的。问题是当我打电话给B时,我无法获取我发送的文件

这是我的密码

对服务器的javascript调用

$("#downloadFile").click(function(){
        $.ajax({
            url : "/fileDownload.action",
            success : function(data){
                handleFile(data);
            }
        });
    });
});

function handleFile(inputFile){
    $.ajax({
        url : "/convertFile.action",
        type : "POST",
        data : {inputFile : inputFile },
        cache:false,
        processData:false,
        contentType: "application/msword",
        success : function(data){
            alert("yay?");
        }
    });
}
在我的服务器端(struts 2.3 action类),对于“/convertFile.action”,我有一个
setInputFile(File inputFile)
方法来设置请求中的文件。但是,它没有设置文件

现在,如果我使用标准的文件上传和HTML格式的表单,它会设置文件(虽然没有javascript,只是简单的HTML和服务器端代码)

另外,如果我尝试在没有ajax调用的情况下构建表单和post,我仍然会得到相同的结果。我试着用js来发布表单


我做错了什么?一种可能是我需要将输入作为字符串或流。但是还有什么我做错了/违反了/不能做的吗

你是说javascript而不是java吗?@imsiso我无法理解你的评论。你能详细解释一下吗?为什么把文件拉回到客户端只是为了再次发送到服务器-奇怪。无论如何,存在不允许jquery/js发布的安全限制files@user2310289-正如我在问题中所解释的,我想使用统一服务将我的文档转换为pdf。因此,将文章发回客户。是的,我知道我可以修改我的服务器端代码,但我正在尝试看看我是否可以用javascript自己来做,这样我就可以在我的客户机(以及任何新客户机)中添加这个额外的调用了。@ArvindSridharan-你没有把你的问题标记为java问题,但我猜你指的是javascript而不是java。(因为它们是两个不同的东西)