【问题标题】:Send data from web API controller into separate asp.net mvc website将数据从 Web API 控制器发送到单独的 asp.net mvc 网站
【发布时间】:2014-07-11 05:09:39
【问题描述】:

我有以下情况:

我们的解决方案中有两个不同的项目:

  1. asp.net mvc 网站
  2. asp.net web api(移动应用服务)。

用户应该能够使用移动网络 API 项目从他们的移动应用上传个人资料图片。但问题是图像物理存储在 asp.net mvc 网站的不同服务器上。

所以这是流程:

  1. 用户上传图片并发送到mobileapidomain/api/user/uploadpicture。 (base64)
  2. 现在我必须将此图像发送到 asp.net mvc 站点并将其存储在 asp.net mvc 服务器上。

将带有图像的当前 base64 字符串从 web api 控制器发送到 asp.net mvc 项目的最佳方法是什么?

【问题讨论】:

    标签: c# asp.net-mvc asp.net-web-api


    【解决方案1】:

    在这种情况下,我认为最好的选择是在您的 mvc Web 应用程序项目包中安装 WebApi 并同时使该项目成为 Web 应用程序(正常使用)和 Web 服务。然后像这样创建新的 ApiController:

    [HttpPost]
    public IHttpActionResult UploadPicture(string base64)
    {
        // Do something with image
        return Ok();
    }
    

    如果您不想在那里安装 WebApi 库,那么我建议添加新的常规控制器来上传图片并添加类似的操作:

    [HttpPost]
    public void UploadPicture(string base64)
    {
        // Do something with image
    }
    

    如果动作中出现问题,则抛出异常以通知对等方发生了错误。如果文件太长而无法在一篇文章中发送,我建议将其拆分并在 mvc 应用程序中连接,因为它会收到它的新部分。

    【讨论】:

      猜你喜欢
      • 2014-01-27
      • 1970-01-01
      • 1970-01-01
      • 2022-01-11
      • 1970-01-01
      • 2012-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多