- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 ASP.NET(不是 MVC)项目的 aspx 页面标记中有以下 Fine Uploader 代码:
<link href="../js/fineuploader/fineuploader-3.5.0.css" rel="stylesheet">
<script type="text/javascript" src="../js/fineuploader/fineuploader-3.5.0.js"></script>
<script type="text/javascript">
$(document).ready(function () {
var uploader = new qq.FineUploader({
element: $('#fine-uploader')[0],
request: { /* <-- THIS IS WHAT I NEED TO FIGURE OUT */
endpoint: 'server/handleUploads'
},
autoUpload: true,
multiple: false,
text: {
uploadButton: '<asp:Button ID="fineUploadButton" runat="server" CssClass="button" style="width:6;5" Text="Browse" />'
},
validation: {
allowedExtensions: ['mp3', 'wav']
}
});
});
</script>
对于客户端来说,这工作得很好。我修改了fineuploader.css以获得我想要的确切外观(大部分)。完成客户端部分后,我只需要通过处理请求端点
部分在我的代码隐藏中处理这个问题。
我在 github 页面上查看了几个示例,但对于 ASP,没有非 MVC 示例。即使是最简单的示例也涉及创建一个新类并从 Controller
类继承。由于我没有使用 MVC 来做这个网站,我该如何处理服务器端方面的问题?
我的客户端部分已经非常完整,如果需要,我可以提供有关我的服务器端代码和组织的更多信息。
最佳答案
处理 Fine Uploader 发送的请求相当简单。默认情况下,所有上传请求都是多部分编码的 POST 请求。默认情况下,所有参数也作为表单字段存在于请求负载中。
我不是 ASP.NET 开发人员,但在 ASP.NET 中处理 MPE 请求应该不会太困难。事实上,这在大多数服务器端语言中都是相当微不足道的。下面是一些应该处理此类请求的代码示例:
using System.Diagnostics;
using System.Net;
using System.Net.Http;
using System.Threading.Tasks;
using System.Web;
using System.Web.Http;
public class UploadController : ApiController
{
public async Task<HttpResponseMessage> PostFormData()
{
// Check if the request contains multipart/form-data.
if (!Request.Content.IsMimeMultipartContent())
{
throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);
}
string root = HttpContext.Current.Server.MapPath("~/App_Data");
var provider = new MultipartFormDataStreamProvider(root);
try
{
// Read the form data.
await Request.Content.ReadAsMultipartAsync(provider);
// This illustrates how to get the file names.
foreach (MultipartFileData file in provider.FileData)
{
Trace.WriteLine(file.Headers.ContentDisposition.FileName);
Trace.WriteLine("Server file path: " + file.LocalFileName);
}
return Request.CreateResponse(HttpStatusCode.OK);
}
catch (System.Exception e)
{
return Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e);
}
}
}
请注意,您的服务器端代码还必须返回有效的 JSON 响应。这在Fine Uploader's server-side readme中有更多描述。 。有an article on MSDN描述了在 .NET 应用程序中处理 JSON。也许这里需要 JsonConvert 类。
您可以在 http://www.asp.net/web-api/overview/working-with-http/sending-html-form-data,-part-2 阅读有关处理这些请求的更多信息。 .
关于asp.net - 如何在非 MVC ASP.NET 应用程序中使用 Fine Uploader 服务器端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16717201/
我是一名优秀的程序员,十分优秀!