zoukankan      html  css  js  c++  java
  • 在程序代码中集成跨域服务文件

    由于silverlight跨域文件在很多分布式应用开发中非常常用,其中一些简单的应用中并不须要在程序发布后让用户来动态配置跨域的xml文件,这样程序目录中又要多出一个xml的跨域文件这样显得没什么必要而且增加了发布的复杂性,所以我通过如下方法实现了在程序中直接让跨域文件集成在代码中。

    我在启动跨域服务的同时,把跨域文件的定义也集成到代码中了。你也可以通过一些自定义的程序功能去动态地成生跨域文件的动态性。这样一样可以达到让用户去配置跨域规则的功能。而且不用再带着那个clientaccesspolicy.xml文件。呵呵。。

    以下是我在启动跨域服务时的代码:

     1:          //本?文?源′创′地?址·:http://funsl.com
     2:          internal void StartupPolicyServer(int maxOnlines)
     3:          {
     4:              _policyBuffer = new byte[371];
     5:              Stream str = new MemoryStream(System.Text.ASCIIEncoding.Default.GetBytes(
     6:  @"<?xml version=""1.0"" encoding =""utf-8""?>
     7:  <access-policy>
     8:    <cross-domain-access>
     9:          <policy>
    10:              <allow-from>
    11:                  <domain uri=""*"" />
    12:              </allow-from>
    13:              <grant-to>
    14:                  <socket-resource port=""4502-4534"" protocol=""tcp"" />
    15:              </grant-to>
    16:          </policy>
    17:      </cross-domain-access>
    18:  </access-policy>"));
    19:              //本?文?源′创′地?址·:http://funsl.com
    20:              str.Read(_policyBuffer, 0, _policyBuffer.Length);
    21:  
    22:              _listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
    23:              _listener.Bind(new IPEndPoint(IPAddress.Any, 943));
    24:              _listener.Listen(maxOnlines);
    25:  
    26:              _listener.BeginAccept(new AsyncCallback(OnClientConnect), null);
    27:          }
    28:  

    然后通过以下代码启动:

    1:  //本?文?原-创′地?址·:http://funsl.com
    2:  jacSocket.crossDomain cd = new jacSocket.crossDomain();
    3:  cd.StartupPolicyServer(200);
    4:  

    其中StartupPolicyServer()的参数为跨域服务接爱最大接入客户端数量,请按你的实际情况填写。

  • 相关阅读:
    excel表格的jar包
    mac和jar的关系
    BAT批处理文件入门-笔记
    没看完_perl的find模块很全面的讲解!!
    perl怎么拷贝一个文件到另一个文件夹中或者怎么拷贝文件夹到另一个文件夹
    perl 中用到的-*的具体解释,方便查看
    perl语言的笔记--啥是mkpath
    剑指哦佛_我的第一篇博客,哦耶
    ajax创建万能的XmlHttpRequest对象
    动态实例化窗体
  • 原文地址:https://www.cnblogs.com/jacle169/p/2810762.html
Copyright © 2011-2022 走看看