金沙国际官网_金沙国际平台登录

因为这个金沙国际官网_金沙国际平台登录网站与很多的大型澳门赌场都有合作,金沙国际官网_金沙国际平台登录尽职尽责,高效执行,保持好奇心,不断学习,追求卓越,点击进入金沙国际官网_金沙国际平台登录马上体验吧,所以现在也正式地开始了营业。

您的位置:金沙国际官网 > 编程 > 字符串反转,调用Tencent云API的实例

字符串反转,调用Tencent云API的实例

发布时间:2019-10-28 21:59编辑:编程浏览(111)

     

           //获取时间戳 .net framework
                /*
                DateTime dt = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); 
                int time = (int)(DateTime.Now - dt).TotalSeconds;
                String Timestamp = time.ToString();
                */
                // .net core 获取时间戳
                DateTime dt = new DateTime(1970, 1, 1,0, 0, 0, DateTimeKind.Utc);
                int time = (int)(DateTime.Now.AddHours(-8) - dt).TotalSeconds;
                String Timestamp = time.ToString();
                //随机正整数,用于防止重放攻击
                Random rd = new Random();
                int rd_i = rd.Next();
                String nonce = Convert.ToString(rd_i);
                //SecretId
                String SecretId = "";
                //参数(用于编码)
                String PostStr = string.Format("Action=DescribeLVBChannelList&Nonce={0}&Region=bj&SecretId={1}&Timestamp={2}", nonce, SecretId, Timestamp);
                //地址
                String url = "https://live.api.qcloud.com/v2/index.php";
                //编码
                UTF8Encoding enc = new UTF8Encoding();
                String qm = "POSTlive.api.qcloud.com/v2/index.php"  + "?" + PostStr;
                byte[] dataToHash = enc.GetBytes(qm);
                /*
                var sha1 = SHA1.Create();
                var result = sha1.ComputeHash(dataToHash);
                */  
                HMACSHA1 hmac = new HMACSHA1()
                {
                    Key = enc.GetBytes("")
                };
                var result = hmac.ComputeHash(dataToHash);
                string Signature = Convert.ToBase64String(result);
                //完整参数
                var completeUrl = string.Format("Action=DescribeLVBChannelList&Nonce={0}&Region=bj&SecretId={1}&Signature={2}&Timestamp={3}", nonce, SecretId, Signature, Timestamp);
    
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
                request.Method = "POST";
                request.ContentType = "application/x-www-form-urlencoded";
                request.ProtocolVersion = HttpVersion.Version10;
                byte[] data = Encoding.UTF8.GetBytes(completeUrl);
                request.ContentLength = data.Length;
                Stream newStream = request.GetRequestStream();
                newStream.Write(data, 0, data.Length);
                newStream.Close();
                HttpWebResponse response = null;
                int httpStatus = 200;
                string content;
                try
                {
                    response = (HttpWebResponse)request.GetResponse();
                    httpStatus = (int)response.StatusCode;
                    StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
                    content = reader.ReadToEnd();
                }
                catch (WebException e)
                {
                    response = (HttpWebResponse)e.Response;
                    httpStatus = (int)response.StatusCode;
                    using (Stream errData = response.GetResponseStream())
                    {
                        using (StreamReader reader = new StreamReader(errData))
                        {
                            content = reader.ReadToEnd();
                        }
                    }
                }
    

     

    (一)  WebDriver

     

    方法一:

    WebDriver提供许多用来与浏览器交互的功能和设置,通过WebDriver的功能和一些方法,来实现与浏览器窗口、警告、框架和弹出窗口的交互,它也提供了自动化操作浏览器导航栏、设置cookies、截屏等方便我们测试的特性。

    public static string Reverse(string name)
    {
         if (String.IsNullOrEmpty(name))
           {
               throw new Exception("字符串不能为空!");
           }
        StringBuilder sb = new StringBuilder(name.Length);
        for (int i = name.Length-1; i >= 0; i--)
         {
            sb.Append(name[i]);
        }
            return sb.ToString();
    }

    (二)  WebDriver功能及方法

     

    功能/属性

    简单说明

    current_url

    获取当前页面的URL地址(driver.current_url)
    下面的都是以这种方式,driver指浏览器驱动实例。
    window_handle
    获取当前窗口的句柄
    name
    获取该实例底层的浏览器名称
    orientation
    获取当前设备的方位
    page_source
    获取当前页面源代码
    title
    获取当前页面的标题
    window_handles
    获取当前会话里所有窗口的句柄

    方法二:.NET3.5以上

     

    public static string Reverse(string name)
    {
         char[] reverse = name.Reverse().ToArray();

    方法

    简单说明

    close()
    关闭当前浏览器窗口
    back()
    后退一步
    forward()
    前进一步
    get(url)
    访问URL并加载网页到当前的浏览器会话
    maximize_window()
    最大化浏览器窗口
    quit()
    退出当前的驱动实例并关闭所有相关窗口
    refresh()
    刷新当前页面
    implicitly_wait()
    等待时间,单位为秒
    set_page_load_timeout()
    设置一个页面完全加载完成的超时等待时间,单位为秒
    set_script_timeout()
    设置脚本执行的超时时间

         return new string(reverse);
    }

     

     

    本文由金沙国际官网发布于编程,转载请注明出处:字符串反转,调用Tencent云API的实例

    关键词:

上一篇:没有了

下一篇:没有了