javascript - Fine Uploader 和 ServiceStack 设置响应 header

标签 javascript file-upload servicestack fine-uploader

我正在尝试使用 ServiceStack 作为 Fine Uploader 的端点来上传一些文件。由于 IE 的不良行为,如果响应设置为内容类型 json/application ,IE 会提示下载响应,如下所示:

IE tries to download json response while submitting jQuery multipart form data containing file

如何强制 ServiceStack 以文本/纯文本形式响应。我正在尝试这个:

 public class UploadFileService : Service
    {
        [AddHeader(ContentType = "text/plain")]
        public object Any(UploadFile request)
        {
            foreach (var uploadedFile in base.RequestContext.Files)
            {
                var test = uploadedFile.FileName;
            }
            return new UploadFileResponse{ Success = true};
        }
    }

但是使用端点时的服务堆栈:

/api/UploadFile?format=json

仍然返回内容类型为 application/json

有什么想法吗?

谢谢

最佳答案

如果您只想返回一个 plain/text 字符串,则还需要返回一个字符串 as seen in this example 。因为它是一个 POCO 对象,所以您首先要序列化它(假设是 JSON):

public class UploadFileService : Service
{
    [AddHeader(ContentType = "text/plain")]
    public object Any(UploadFile request)
    {
        foreach (var uploadedFile in base.RequestContext.Files)
        {
            var test = uploadedFile.FileName;
        }
        var dto = new UploadFileResponse { Success = true };
        return dto.ToJson();           
    }
}

否则你可以直接返回字符串文字,例如:

return "{Success:true}";

关于javascript - Fine Uploader 和 ServiceStack 设置响应 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15966915/

相关文章:

Java 文件上传验证最佳实践

xamarin.ios - 如何强制 Monotouch AOT Compiler 查看嵌套的泛型方法?

javascript - 编译TypeScript时如何处理外部模块?

javascript - 我可以从任何文件中访问 html 元素 Id 吗?

iphone - Photobucket iOS 集成

javascript - 如何使用包含文件和发布数据的 JavaScript 创建 AJAX 请求

ServiceStack - 使用其他服务的服务

servicestack - Servicestack References 与 ForeignKey 中的数据注释

javascript - 如何修复我的 Angular 4 路由

javascript - 如何使用 Firebase 实时数据库查询所有子项