0

亲爱的开发者朋友们,

我在 ASP.Net MVC4 中开发了一个自托管 API(例如http://blogs.msdn.com/b/henrikn/archive/2012/03/01/file-upload-and-asp-net-web-api .aspx),因为我需要一个可以上传超大文件的解决方案。这工作顺利。

现在我想通过Bluimp JQuery Upload 组件将文件上传到我新编写的 API 。

这工作正常,除了一些小缺陷:
- 进度条未显示
- JQuery 引发错误:不安全的 JavaScript 尝试使用 URL 访问框架...

这个错误似乎很明显,因为我的 API 在 Web 应用程序之外的另一个端口上运行,并且无法通过跨域/端口进行 ajax 调用。

我已经在 fileupload 组件调用中添加了 forceIframeTransport: true 参数。这有一些好处 - 没有它我根本无法上传文件(因为组件尝试使用 ajax 调用上传)。

所以... 但是..我不太确定这是否可能..

不幸的是,我的 ASP.Net 应用程序的代理在这里对我没有帮助,因为我编写了 API 以避免IIS 限制(关于最大上传大小)。使用我的自托管 API 作为代理可能会完成这项工作,但我认为这有点……矫枉过正?

任何人?提前致谢!

4

1 回答 1

1

雅虎!解决了!

var config = new HttpSelfHostConfiguration("http://localhost:49302/ api ");

换句话说 - web api 仅在 url 以/api开头时有效。所有其他请求都由我的 MVC4 Web 应用程序接收。但是它们在同一个端口上运行。

所以回答我的问题:是的,这是可能的。只需添加一个根目录。

于 2012-08-22T20:27:54.780 回答