【问题标题】:Receive file with servicestack from multipart/form-data从 multipart/form-data 接收带有 servicestack 的文件
【发布时间】:2020-05-30 09:00:43
【问题描述】:

我将表单作为多部分/表单数据从反应应用程序提交到 .net 后端。我使用 FormData 对使用 axios 发布数据做出反应。在服务器端,我使用 servicestack 处理数据,我设法弄清楚了文本输入,但我不知道如何接收文件输入。

这就是我从 react 提交表单的方式

handleSubmit = event => {
        event.preventDefault();
        var form = document.getElementById("imageForm"); // You need to use standard javascript object here
        var formData = new FormData(form);

        axios.post('http://myurls.com', formData, {headers: { 'Content-Type': 'multipart/form-data' }})
        .then(res=>{
            console.log(res);
        }) 
        .catch(error =>{
            console.log(error);
        })
    }

这是我的 servicestack C#


    #region PLUGIN
    public class FormSubmit : IPlugin
    {
        public void Register(IAppHost appHost)
        {
            appHost.RegisterService(typeof(FormSubmitService));
        }
    }

    #endregion

    #region SERVICE
    public class FormSubmitService : ServiceStack.Service
    {
        public object Post(FormSubmitRequest request)
        {
            return request;
        }
    }
    #endregion

    #region REQUEST
    [Route("/myservice/submitform")]
    public class FormSubmitRequest : IReturn<object>
    {
        public object ImageFile { get; set; }
        public string ImageTitle { get; set; }
        public string ImageDescription { get; set; }

    }
    #endregion

我对 C# 非常陌生,我无法确定问题所在。我的猜测是 ImageFile 的数据类型,我尝试将其设置为 objectstringbytes[]System.Web.UI.WebControls.Image,但这似乎没有任何区别。

当我返回请求时,我可以看到我的请求对象包含 ImageTitleImageDescription 但没有 ImageFile,甚至没有一个空键

我真的很迷茫,甚至不知道从哪里开始调试问题。

提前感谢您的帮助!

【问题讨论】:

    标签: c# reactjs servicestack form-data


    【解决方案1】:
    猜你喜欢
    • 2013-05-06
    • 2016-04-22
    • 2020-05-18
    • 2019-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-28
    • 1970-01-01
    相关资源
    最近更新 更多