silverlight如何通过单独部署的WCF站点访问sharepoint2013的图片库

最近有项目silverlight通过单独部署的WCF站点访问sharepoint2013的图片库,需要做个笑脸墙效果如下:

image

结果开发完毕后无法在SP站点显示出来。使用VS自带的WCF工具进行测试。如下:

C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE 找到WcfTestClient.exe

如下图:

image

 

image

 

image

双击其中一个方法,可以进行测试。。。

 

经过测试发现无权限,于是想到应用程序池,把WCF部署的站点的应用程序池设置成当前SP的场管理员,如下图:

image

设置方法,点击应用程序池的高级设置,如下图:

image

 

image

点设置

image

设置完成发现silverlight部署到SP站点还是无法通过WCF读取图片,想到应当是跨域问题。

创建如下2个xml文件

1、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>  

2    crossdomain.xml

<?xml version="1.0"?> 

<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd"</a&gt; 

<cross-domain-policy> 

  <allow-http-request-headers-from domain="*" headers="*"/> 

</cross-domain-policy>

把2个文件拷贝到WCF的站点下,如下图:

image

再把clientaccesspolicy.xml 拷贝到sp站点根目录下,c:\intetpub\wwwroot找到对应的站点,如下图:

image

拷贝完毕后,再打开SP站点此时可以看到silverlight通过WCF访问到图片库。

image

你可能感兴趣的:(silverlight)