2

有没有人使用带有 Box.net 云存储的 jquery 表单插件。目前,我正在努力使用 jquery 表单插件将文件上传到 box.net。

我的Javascript代码:

    $(document).ready(function(){
        jQuery('#uploadForm').ajaxForm({
            beforeSubmit:   function() { alert('before');},
            success:        function(data) { alert('success: ' );},
            url:            'https://upload.box.net/api/1.0/upload/token/183331021',
            type: 'POST',
            dataType:       'xml',
            crossDomain: true
        });
    });

我的页面:

<form id="uploadForm" name="uploadForm" action="" method="POST" enctype="multipart/form-data">
  <label>File to upload</label>
  <input type="file" size="30" name="file" id="fileToUpload"/>  
  <input type="text" value="hello"/>
  <input type="submit" value="Upload"></input>
</form>

似乎成功功能从未运行过,有人知道可能导致这种情况的原因吗?

4

1 回答 1

0

Ajax 不能跨不同的域工作。这是 JavaScript 的“安全功能”。

http://en.wikipedia.org/wiki/Cross-site_scripting

一种可能的解决方法是通过相对服务器端请求镜像 Ajax 帖子,然后将其中继到您上面的 https 框地址。我已经使用 Perl 和 ASP.Net 完成了这项工作,但也可以与其他人一起完成。

于 2012-02-08T01:20:24.810 回答