zoukankan      html  css  js  c++  java
  • 用户验证码

    Action()
    {
     
        //定义Md5变量用来存放使用md5加密后的字符串
    	char Md5[33];
     
    	//存放包含用户登录信息的URL
    	char str[174];	
     
    	//存放用户账户信息
    	char str1[92];
    	//存放当前时间
    	int t1;
     
        int a;
    	
    	char Message[50];
    	//把持续的秒数放入t1变量中
    	t1=time();
     
    	//把t1中存储的值赋值给time1变量
    	lr_save_int(t1,"time1");
     
    	//使用lr_eval_string函数获取变量的值,并把值赋值给str1变量
    	strcpy(str1,lr_eval_string("account={code}.pt&appId=1002&code={code}&gameId=89&ip={用户IP}×tamp={time1}cb29fca01dbtk7a29np0lp59yl6hd258"));
    	lr_output_message(str1);
    	//把str1进行md5加密,并把加密完的字符串赋值给Md5变量
    	GetMd5FromString(str1,Md5);
    	//重新生成并包含sign”=“Md5中包含的值的URL字符串放入str变量中
    	sprintf(str,"URL=http://{服务器IP}/api/Character/ValidateCode?account={code}.pt&appId=1002&code={code}&gameId=89&ip={用户IP}×tamp={time1}&sign=%s",Md5);
     
    	//进行手动关联,获取动态信息,并把动态信息保存到Message变量中
    	web_reg_save_param("Message", 
    		"LB/IC=Message":"", 
    		"RB/IC="", 
    		"Ord=1", 
    		"Search=Body", 
    		"RelFrameId=1", 
    		LAST);
     
        //开始验证事务
    	lr_start_transaction("验证成功");
    	lr_start_transaction("验证失败");
     
        //获取验证码数据包
    	web_url("ValidateCode", 
    		
    		str,//获取验证码URL链接
    		"Resource=1", 
    		"RecContentType=application/xml", 
    		"Referer=", 
    		"Snapshot=t5.inf", 
    		LAST);
     
     
     
        //使用lr_eval_string函数获取变量{Message}的值,并把值赋值给Message变量
    	strcpy(Message,lr_eval_string("{Message}"));
    	//输出Message信息
        lr_output_message(Message);
     
        //调用strcmp函数把Message中存储的值和“success”进行比较
    	//把比较结果赋值给变量a
        a=strcmp(Message,"success");
     
     
        //判断a的值,如果a==0则“success”
    	if (a == 0) 
    	{
     
    		//结束验证成功事务了,并自动设置事务状态(PASS or FAIL)
    		lr_end_transaction("验证成功", LR_AUTO);
     
    		//把持续的秒数放入t1变量中
    		t1=time();
     
    		//把t1中存储的值赋值给time1变量
    		lr_save_int(t1,"time1");
     
    	   //使用lr_eval_string函数获取变量的值,并把值赋值给str1变量
    		strcpy(str1,lr_eval_string("account={code}.pt&appId=1002&code={code}&gameId=89&ip={用户IP}×tamp={time1}cb29fca01dbtk7a29np0lp59yl6hd258"));
    		lr_output_message(str1);
    		//把str1进行md5加密,并把加密完的字符串赋值给Md5变量
    		GetMd5FromString(str1,Md5);
    		//重新生成并包含sign”=“Md5中包含的值的URL字符串放入str变量中
    		sprintf(str,"URL=http://{服务器IP}/api/Character/UseCode?account={code}.pt&appId=1002&code={code}&gameId=89&ip={用户IP}×tamp={time1}&sign=%s",Md5);
     
    		//进行手动关联,获取动态信息,并把动态信息保存到Message变量中
    		web_reg_save_param("Message", 
    			"LB/IC=Message":"", //左边界开始为“Message“:””
    			"RB/IC="",//右边界为““”
    			"Ord=1", 
    			"Search=Body", 
    			"RelFrameId=1", 
    			LAST);
     
    		//开始使用事务
    		lr_start_transaction("使用成功");
    		lr_start_transaction("使用失败");
     
    		//获取验证码数据包
    		web_url("ValidateCode", 
    			
    			str,//获取验证码URL链接
    			"Resource=1", 
    			"RecContentType=application/xml", 
    			"Referer=", 
    			"Snapshot=t5.inf", 
    			LAST);	
     
     
     
    		//使用lr_eval_string函数获取变量{Message}的值,并把值赋值给Message变量
    		strcpy(Message,lr_eval_string("{Message}"));
    		lr_output_message(Message);
     
    		//调用strcmp函数把Message中存储的值和“success”进行比较
    		//把比较结果赋值给变量a
    		a=strcmp(Message,"success");
     
     
    		//判断a的值,如果a==0则“success”
    		if (a == 0) {
    			//结束使用成功事务了,并自动设置事务状态(PASS or FAIL)
    			lr_end_transaction("使用成功", LR_AUTO);
    		}
    		else{
    			//结束使用失败事务了,并自动设置事务状态(PASS or FAIL)
    			lr_end_transaction("使用失败", LR_AUTO);
    		}
     
    	}
     
    	else 
    	{
    		//结束验证失败事务了,并自动设置事务状态(PASS or FAIL)
    		lr_end_transaction("验证失败", LR_AUTO);
    	}
     
     
    	return 0;
    }
     
    

      

  • 相关阅读:
    Java的Regex --正则表达式
    Java的包装类
    类的始祖Object
    abstract和interface关键字介绍
    内部类
    Accumulation Degree [换根dp,二次扫描]
    牛客练习赛61 [口胡]
    CF1334G Substring Search [bitset,乱搞]
    CF1175F The Number of Subpermutations [哈希,乱搞]
    CF793G Oleg and chess [线段树优化建边,扫描线,最大流]
  • 原文地址:https://www.cnblogs.com/Alexr/p/9360612.html
Copyright © 2011-2022 走看看