Silverlight 跨域访问的问题
遇到一个问题:用WPF程序承载一个WebService,Silverlight可以访问元数据,但是在访问的时候提示跨域访问的问题。请问这个时候改把clientaccesspolicy.xml 放在那里。 --------------------编程问答-------------------- 放在服务端的根目录下。 --------------------编程问答-------------------- 放在你的WCF服务所在的那个项目的根目录下 --------------------编程问答-------------------- 用WPF程序承载一个WebService ,
那么就要在 WPF 所承载的 WebService 所使用的同一个端口下,
以 webHttpBinding 方式提供 clientaccesspolicy.xml ,
且终结点的地址相对于所承载的 WebService 而言应是“根目录”。
上面说的是 WebService 以非 net.tcp 的方式承载的,
如果是以 net.tcp 的方式承载的,我个人尝试过 Silverlight 4.0 正式版本搞不了这个要求,
因为Silverlight 4.0 正式版只能从80端口访问clientaccesspolicy.xml ,
而不能从 543 端口去访问clientaccesspolicy.xml 。 --------------------编程问答-------------------- 学习学了 --------------------编程问答--------------------
不是!
应该如#1楼所说,放在服务器的根目录下。当然这个根,是指从客户端所看到的根。如果你的应用程序访问页面是
http://123.abc.com/department1/website1/command1.html
这个页面上有sl的跨域访问,它访问
http://123.abc.com/department1/webservice1/xxxx.svc
那么你的策略配置xml文件的路径应该是
http://123.abc.com/clientaccesspolicy.xml
直接跟到网站url之后,而与目录没有关系,更不是放到webservice1下面。 --------------------编程问答--------------------
正解。
不过,楼主说的是用 WPF 或者 WinForm ,就是用 Self-Host 的 WebService 或 WCF 时如何为 Silverlight 提供 跨域策略文件 --------------------编程问答-------------------- 学习啊!!!! --------------------编程问答-------------------- 我刚刚学Silverlight,哪个推荐点号的教程、书或网站给我嘛
补充:.NET技术 , Web Services