跨域政策未生效

nik*_*-vc 2 silverlight configuration web-services cross-domain

我创建了一个ClientAccessPolicy.xml,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<access-policy>
  <cross-domain-access>
    <policy>
      <allow-from>
        <domain uri="*"/>
      </allow-from>
      <grant-to>
        <resource path="/" include-subpaths="true"/>
      </grant-to>
    </policy>
  </cross-domain-access>
</access-policy>
Run Code Online (Sandbox Code Playgroud)

并将其放在C:\ Inetpub\wwwroot\wss\VirtualDirectories\intranet-80中,然后运行iisreset.尽管如此,当我通过Silverlight访问Web服务时,我收到一个CommunicationException,表示没有正确的跨域策略.我还需要做些什么才能访问我的网络服务?我无法从其他主机访问它,我无法从生成的文件E:\ Development\MySLProject\MySLProject\bin\Debug\Default.html访问它?

干杯

Fra*_*ori 5

它很容易告诉你如何解决这个问题不是告诉你在那里正是你必须把文件:

  • 第1步:安装并启动Fiddler
  • 第2步:打开您的silverlight客户端
  • 第3步:在Fiddler中观察客户端请求clientAccessPolicy.xml(这是一个简单的http GET请求,如下载图像或其他)
  • 第4步:将您的clientAccessPolicy文件放在正确的位置(通过浏览器直接下载测试)

我打赌你会在不到10分钟内解决问题(去过那里,做到了:-))