首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Breezejs,跨域

Breezejs,跨域
EN

Stack Overflow用户
提问于 2013-03-20 08:03:19
回答 2查看 477关注 0票数 2

我有一个minor...or也许是专业的..关于微风的问题..我目前的设置是我有两个项目..托管breeze-api的一个web-api项目..另一个项目是托管客户端应用程序,该应用程序应该使用api。这将提供两个不同的端口,api和客户端在这两个端口上运行。

所以我的问题是。有没有办法让微风在跨域上工作?或者,breeze只被构建为在其自己的域中使用?

提前感谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-20 11:22:38

跨域是没有问题的。

好的,有一个问题,但这不是微风问题。您正在与困扰我们所有人的浏览器的"Same Origin Policy“搏斗。

你可以绕过它。唯一的问题是你想怎么做。这个问题从“你将支持什么浏览器”开始。如果是IE10+和最新的Chrome和FF,你应该使用CORS。如果老的浏览器和歌剧...你将不得不打一场JSONP之战。

请给我建议。

猜猜我更喜欢哪一个?在Breeze已经有一个CORS样本了。这是你用the downloads得到的the Todo sample。它还没有被记录下来,但它就在那里等着你。

票数 3
EN

Stack Overflow用户

发布于 2015-03-22 15:59:06

Ward'd的解决方案非常正确,我只是添加了一个更直接的解决方案。

现在执行此操作,安装软件包。

Microsoft.AspNet.WebApi.Cors

然后将此代码添加到web.config

代码语言:javascript
复制
<system.webServer>
<httpProtocol>
<customHeaders>
  <add name="Access-Control-Allow-Origin" value="*"/>
  <add name="Access-Control-Allow-Headers" value="Content-Type"/>
  <add name="Access-Control-Allow-Methods" value="POST,GET,OPTIONS"/>
</customHeaders>
</httpProtocol>
</system.webServer>

将"Access-Control-Allow-Origin“更改为您的其他站点*是一个安全风险,因为它允许所有人使用它进行开发

然后将此altribrute添加到您希望访问的资源中

代码语言:javascript
复制
[EnableCors(origins: "*", headers: "*", methods: "*")]

再次更改这里的原点,记住在url的末尾不要有反斜杠。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15512850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档