jquery - 如何使用 ajax 和 jQuery 上传多个视频。由于内部服务器错误,无法上传
问题描述
由于内部服务器错误,无法上传
如何使用 ajax 和 jQuery 上传多个视频我尝试了几次,ajax 调用函数没有命中但错误:函数显示警报消息“错误”或“内部服务器错误”。l 尝试加载小于 10MB 的视频文件。
if (window.File && window.FileList && window.FileReader)
{
var fileUpload = $("#HomeImage").get(0);
var files = fileUpload.files;
var url=$('#B2BSiteUrl').val();
// Create FormData object
var fileData = new FormData();
// Looping over all files and add it to FormData object
for (var i = 0; i < files.length; i++) {
fileData.append(files[i].name, files[i]);
}
$.ajax({
url:url,
type: "POST",
contentType: false, // Not to set any content header
processData: false, // Not to process data
data: fileData,
success: function (result) {
$('#Loader').hide();
$('#btnsubmit').show();
if (result.Message == 'This Video Already Saved') {
alert('This Video Already Saved');
}
},
error: function (err) {
alert(err.statusText);
}
});
} else {
alert("FormData is not supported.");
}
服务器代码
public JsonResult SaveHomePageVideo()
{
try
{
if (Request.Files.Count > 0)
{
HttpFileCollectionBase files = Request.Files;
bool _rowsAffected = false;
PredefinedSearchServices objPredefinedSearchServices = new PredefinedSearchServices();
for (int i = 0; i < files.Count; i++)
{
HttpPostedFileBase file = files[i];
Logger.LogToTextFile(file.FileName);
bool IsExist = objPredefinedSearchServices.CheckHomePageVideo(file.FileName);
if (IsExist)
{
//already exists
}
else
{
string rootPath = Path.Combine(Common.ConfigSettings.OfflineDealImagePhysicalPath, "cms");
if (!Directory.Exists(Path.Combine(rootPath, "HomePageVideo")))
Directory.CreateDirectory(Path.Combine(rootPath, "HomePageVideo"));
string extension = Path.GetExtension(file.FileName);
string fileName = file.FileName;
var saveFolder = Path.Combine(rootPath, "HomePageVideo");
var filePath = Path.Combine(saveFolder, fileName);
System.IO.File.Delete(filePath); //delete if exists
file.SaveAs(filePath); //save image
_rowsAffected = objPredefinedSearchServices.InsertHomeVideos(fileName);
_rowsAffected = true;
}
}
return null;
}
解决方案
推荐阅读
- flutter - 如何将孩子(带有文本的容器)定位在底部并使其宽度与他的sybilings相同并将文本保持在中心
- php - 试图在单页中获取帖子的详细信息
- java - 为什么 Spring cloud 在 network_mode: "host" 下工作并在桥上拒绝连接?
- socket.io - Socket.IO 实时聊天
- c# - 在按钮上运行多个 SQL 命令单击编辑已解决
- java - 遍历 div 中的页面链接,然后单击包含 Selenium (java) 中特定值的每个链接
- python - 有没有办法使用 MQTT 增加网络摄像头输出的 FPS?
- javascript - 如何添加不同的
到火库? - css - HTML5 内嵌视频忽略 z-index
- c++ - 使用 C++ 从文件中读取数据