• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
袜子不回头
一个人走着走着摔倒了,爬起来,又摔倒了,又爬起来,又摔倒了,死循环了……
博客园    首页    新随笔    联系   管理    订阅  订阅

用VS2010开发slirverlight 调用WCF服务

今天研究了一上午加下午好几个小时,终于把这个问题解决了。

问题是用VS2010写得Sirverlight调用WCF 会出现跨域的问题,相信这个问题大家都会遇到过,解决办法很简单,只要在WCF项目根目录加入1个配置文件即可 

内容如下: 

clientaccesspolicy.xml
//要记得名字为clientaccesspolicy.xml
<?xml version="1.0" encoding="utf-8"?> 
<access-policy> 
<cross-domain-access> 
<policy> 
<allow-from http-request-headers="*"> 
<domain uri="*"/> 
</allow-from> 
<grant-to> 
<resource path="/" include-subpaths="true"/> 
</grant-to> 
</policy> 
</cross-domain-access> 
</access-policy> 

 

 

这个问题很好解决

而我当初遇到的问题却不是这个,

在公网上有一个WCF服务,这个服务是公共的,大家都可以调用的,而且服务不是我写的,我怎么能去人家那里的根目录添加这个配置文件呢?如果遇到这种情况我这里还有一个解决方案,虽然不知道是不是最佳的,但是保证可以实现需求。

如果想用SL调用一个公网的WCF,这时候要在本地建一个WCF服务,这个WCF服务的作用是来给你的SL项目和WCF项目做桥梁的,在这里我不太明白的地方,(为什么本地WCF服务可以访问外网的WCF服务,而本地的SL项目访问外网WCF服务就会有跨域的问题,希望各位强人可以给予答案 。),继续向下说,想必大家才出来了,我要用我本地的WCF服务访问公网的WCF服务,然后在用本地的SL项目来访问本地的WCF服务,这样就可以同样取得公网WCF服务的数据了

posted @ 2010-05-25 15:28  袜子不回头  阅读(954)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3