1

我正在使用 .Net 4 中的 Rest 服务,我需要执行重定向。

对我正在做的事情的一点描述:我有一个包含按钮的 silverlight 应用程序。当我单击该按钮时,我会向我的 REST 服务发送一个带有一些信息的 POST 请求。根据这些信息,我创建了一个 URL 并(尝试)重定向浏览器。这是服务中方法的代码:

[WebInvoke(Method = "POST", UriTemplate = "OpenBinder")]
public void OpenBinder(int someId)
{
    string url = getUrl(someId);
    if (WebOperationContext.Current != null)
    {
        WebOperationContext.Current.OutgoingResponse.Location = url;
        WebOperationContext.Current.OutgoingResponse.StatusCode = HttpStatusCode.Redirect;
    }
}

这似乎正确执行,但是当我在客户端上调用 EndGetResponse 时,我看到发生了“安全错误”。这是 System.Security.SecurityException,但我没有得到比这更多的细节。关于这里可能发生什么的任何想法?

4

2 回答 2

0

如果没有更多信息,我不确定您的具体安全错误是什么,但通常在这种情况下,您的重定向应该发生在响应处理程序的客户端。您可以重组代码以使客户端重定向吗?

于 2012-08-23T14:22:18.187 回答
0

好的,所以我的代码实际上工作正常。当我查看 Fiddler 时,我注意到它正在向 Url 发出正确的请求。问题是 clientacesspolicy.xml 正在阻止它。

于 2012-08-24T13:59:18.567 回答