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

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

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

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

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

如下图:

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

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

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

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

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

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

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

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

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

点设置

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

设置完成发现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的站点下,如下图:

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

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

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

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

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

上一篇:C++ 抽象类与接口


下一篇:Django Admin 删除文件同时删除资源文件(delete_upload_files)