我对 Plupload 有一个奇怪的问题,希望你能帮助我。
我将它与 MVC 和 Amazon S3 一起使用,并且以样本为例,它一切正常。
所以它目前在 HomeController Index 视图中。
因此,如果我导航到 localhost/ 它可以正常工作。
如果我导航到 localhost/Home,则“添加文件”按钮不可点击,因为 _Flash_Container 挡住了路。
即使我使用 Firebug 将其删除,“添加文件”按钮也不会执行任何操作。
有人有什么主意吗?
我的代码如下:
@model MVC3PluploadToAmazonS3.ViewModels.FileUploadViewModel
@{
ViewBag.Title = "Index";
}
<h2>Upload to Amazon S3</h2>
<div id="uploader">
<p>You browser doesn't have Flash, Silverlight, Gears, BrowserPlus or HTML5 support.</p>
</div>
<input type="hidden" name="key" value="@Model.FileId-${filename}">
<input type="hidden" name="AWSAccessKeyId" value="@Model.PublicKey">
<input type="hidden" name="acl" value="@Model.Acl">
<input type="hidden" name="success_action_redirect" value="@Model.RedirectUrl">
<input type="hidden" name="policy" value="@Model.Policy">
<input type="hidden" name="signature" value="@Model.Signature">
@section scriptFiles {
<script>
$(document).ready(function () {
$("#uploader").plupload({
//amazon settings.
runtimes: 'flash,silverlight',
url: 'https://rapplex.s3-eu-west-1.amazonaws.com',
max_file_size: '100000000mb',
multipart: true,
multipart_params: {
'key': '${filename}', // use filename as a key
'Filename': '${filename}', // adding this to keep consistency across the runtimes
'acl': $('#Acl').val(),
'Content-Type': 'binary/octet-stream',
'success_action_status': '201',
'AWSAccessKeyId': $('#AWSAccessKeyId').val(),
'policy': $('#Policy').val(),
'signature': $('#Signature').val()
},
// optional, but better be specified directly
//file_data_name: 'file',
// re-use widget (not related to S3, but to Plupload UI Widget)
//multiple_queues: true,
// Resize images on clientside if we can
//resize: { width: 320, height: 240, quality: 90 },
// Specify what files to browse for
filters: [
// { title: "Video files", extensions: "mp4,m4v,wmv,avi,mov,mpg,mpeg,mkv" }
{ title: "Image files", extensions: "jpg,gif,png" },
//{ title: "Zip files", extensions: "zip" }
],
// Flash settings
flash_swf_url: 'Scripts/plupload/plupload.flash.swf',
// Silverlight settings
silverlight_xap_url: 'Scripts/plupload/plupload.silverlight.xap'
});
});
</script>
}
任何帮助将不胜感激
编辑:好的,我已经做了一些进一步的调查。
似乎 localhost/home 确实有效,但 localhost/home/ 和 localhost/home/index 不起作用。
我注意到在初始 css 文件中有一堆 @Import *.css 并将它们更改为 /path/to/file.css 这没有什么区别。我还尝试从@imports 中删除第一个正斜杠,但这只是删除了所有样式,所以我知道不是这样。
我还尝试将 .swf 路径更改为绝对路径(localhost:2668/Scripts/plupload/plupload.flash.swf),但这也没有用。