0

我正在尝试从 Silverlight 到 youtube 进行简单的 WebClient 调用。我从 Microsoft Silverlight 站点提取了代码。

这是代码:

private void SearchTrack_Click(object sender, RoutedEventArgs e) { Uri serviceUri = new Uri(" https://www.googleapis.com/youtube/v3/search?part=id%2Csnippet&q=sara+smile&key=AAAAAAAAAAAAAAA "); WebClient 下载器 = new WebClient(); downloader.OpenReadCompleted += new OpenReadCompletedEventHandler(downloader_OpenReadCompleted); 下载器.OpenReadAsync(serviceUri); }

    void downloader_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
    {
        if (e.Error == null)
        {
            Stream responseStream = e.Result;

            // Continue working with responseStream here...
        }
    }

调用失败并出现以下错误:

[System.Security.SecurityException] = {System.Security.SecurityException ---> System.Security.SecurityException:安全错误。在 System.Net.Browser.BrowserHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult) 在 System.Net.Browser.BrowserHttpWebRequest.<>c__DisplayClassa。

如果我只是从浏览器中点击 URL,那么 JSON 将毫无问题地返回。

我正在从 VS/Cassini 运行应用程序,所以我认为这不是http://blogs.msdn.com/b/silverlightws/archive/2008/03/30/some-tips-on确定的文件系统问题-cross-domain-calls.aspx

任何帮助将不胜感激。

巴里

4

1 回答 1

1

据说,由于 corssdomain 访问限制,从 silverlight 与 google api 交互并不容易您需要添加一些中间 WCF 服务,您的 SL 应用程序将通过该服务与 youtube api 进行通信。

于 2013-06-16T10:21:33.710 回答