我在 Internet 上有一个 RESTful 服务,但 silverlight 需要跨域设置,我需要使用 Silverlight 使用此服务,我曾尝试将 WCF 服务作为中间件,但不幸的是这不起作用。
问问题
152 次
3 回答
1
您可以尝试使用Javascript Bridge。我没有尝试过这种方法,但您可以使用 ajax 调用,然后通过 JS 桥“推送”到 SL。
于 2013-04-26T20:54:44.977 回答
1
为服务器端创建一个 util 类,例如Util.DoRequest(string address):string
来自msdn:
通过 WCF RIA 服务返回readStream.ReadToEnd
给您的客户。(域服务类)
通过这种方式,如果您的服务器可以访问这个 RESTful 服务或者它已经位于那里,那么您的xap
.
HttpWebRequest request = (HttpWebRequest)WebRequest.Create (args[0]);
// Set some reasonable limits on resources used by this request
request.MaximumAutomaticRedirections = 4;
request.MaximumResponseHeadersLength = 4;
// Set credentials to use for this request.
request.Credentials = CredentialCache.DefaultCredentials;
HttpWebResponse response = (HttpWebResponse)request.GetResponse ();
Console.WriteLine ("Content length is {0}", response.ContentLength);
Console.WriteLine ("Content type is {0}", response.ContentType);
// Get the stream associated with the response.
Stream receiveStream = response.GetResponseStream ();
// Pipes the stream to a higher level stream reader with the required encoding format.
StreamReader readStream = new StreamReader (receiveStream, Encoding.UTF8);
Console.WriteLine ("Response stream received.");
Console.WriteLine (readStream.ReadToEnd ());
response.Close ();
readStream.Close ();
于 2013-04-29T06:02:36.273 回答
1
与其尝试未知的方式,不如在服务器中放置一个跨域策略文件。为什么服务器中不需要有跨域策略文件和客户端访问文件?有什么具体原因吗?
于 2013-04-29T06:07:07.087 回答