【问题标题】:can we post/put/delete using jsonp-cross domain in asp.net webapi?我们可以在 asp.net webapi 中使用 jsonp-cross 域发布/放置/删除吗?
【发布时间】:2012-05-15 10:48:21
【问题描述】:

使用asp.net webApi

我有 site1 (http://localhost:53723) 和 site2 (http://localhost:64009)。 我想从 site2 获取数据到 site1(跨域,不同来源)。

这个我们可以用jsonp,我已经实现了数据。

我们可以使用 jsonp 来发布/放置/删除跨域(不同来源)的动词吗?

【问题讨论】:

  • 我认为您的架构存在缺陷。使用异源仅作为例外,而不是作为规则。
  • 我想为所有信息创建一个来源(webapi)并使用多个平台来使用它(网站、移动应用程序、桌面应用程序等)这将是跨域的,因为我会保留我的 webapi 作为一个站点和不同站点/应用商店/pc/mac 中的其他平台。所以从跨域获取是没有问题的,但是如果我需要发布/放置/删除操作怎么办?我如何做到这一点?

标签: cross-domain jsonp asp.net-mvc-4 asp.net-web-api


【解决方案1】:

你的设计可能有点缺陷,如果你真的需要提出跨域请求,你应该重新考虑。如果你这样做了,那么当你需要支持 POST/PUT/DELETE 动词时,更好的解决方案是CORS。 Carlos Figueira 有一些关于如何在 ASP.NET Web API 中实现它的不错的博客文章:

【讨论】:

  • 虽然 CORS 很好并且易于实现,但它不适用于 IE8/9 的跨协议 (http-https) 请求。因此,要使其正常工作,在这种情况下唯一可用的选项仍然是 JSONP。
猜你喜欢
  • 2016-01-26
  • 2016-05-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-09
  • 2012-12-29
  • 2011-05-17
相关资源
最近更新 更多