【问题标题】:SharePoint 2010 and SilverlightSharePoint 2010 和 Silverlight
【发布时间】:2011-11-15 07:40:36
【问题描述】:

我们目前有一个 Silverlight 应用程序,它托管在 SharePoint 2010 页面中。 Silverlight 应用程序对我们域中的另一台服务器进行 Web 服务调用,该服务器有一个 clientaccesspolicy 文件。我们在生产环境中遇到跨域问题。

场管理员组中的用户可以毫无问题地使用 Silverlight 应用程序。但是,所有其他用户在尝试使用此应用程序时都会收到通用跨域异常。我们已将 Fiddler 附加到该过程中,并注意到为场管理员提供了 clientaccesspolicy 文件,但非管理员用户没有。事实上,Fiddler 从未尝试为非管理员加载此文件。

这只发生在我们的生产环境中,这让我相信是网络配置或权限设置导致了这个问题。不幸的是,我找不到任何支持这一点的东西。

有没有其他人遇到过这个问题或知道是否存在这样的设置?

【问题讨论】:

  • 需要检查用户是否可以直接访问服务和策略文件。
  • 他们可以。我让用户在他们的浏览器中测试 URL。他们可以点击服务 URL 和策略文件。他们只是无法访问托管在 SharePoint 中的 Silverlight 应用程序。我最初没有提出的一点 - 有问题的服务是一个简单的 WCF 服务,它对 SQL Server 执行 SELECT。它不是 SharePoint Web 服务。
  • 有类似的讨论:forums.silverlight.net/t/193638.aspx。其他一些想法:策略文件被浏览器缓存,或者有一些映射将远程服务器屏蔽为本地服务器。
  • 我想通了。这是我的一个错误。我必须为服务 url 添加完整的机器名称,即webserver.domain.com/service.svc。之前设置为webserver/service.svc。我仍然不知道为什么农场管理员可以使用第一个 URL,但我现在不会担心。
  • 也许农场管理员在本地机器上使用了这个服务,并且由于一些隐式的 url 映射而可以访问它。好的,自己发布您的问题的答案并接受它,它可能会帮助其他有类似问题的人。

标签: silverlight sharepoint-2010


【解决方案1】:

参见上面的 cmets。我必须更改 URL 以使用完整的机器名称,即从 webserver/service.svc 到 webserver.domain.com/service.svc。它解决了这个问题,但没有回答为什么农场管理员可以访问它的问题。 vorrtex 的回应是迄今为止我看到的最好的解释。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-06-04
    • 2011-10-13
    • 2011-09-06
    • 2023-04-06
    • 2011-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多