zoukankan      html  css  js  c++  java
  • [工具开发] 一信通 Web 短信发送客户端

    一、简介

    为了协助公司运营部对几家短信平台进行测试,我根据各自的接口文档编写了几个简单的短信发送客户端;

    下面是一信通 Web 短信发送客户端,使用 HTTP GET 方法。

    二、效果图

    1. 首页

    2. 返回页

    三、源代码

    1. index.pl

    #!/usr/bin/perl -w
    
    #Hu Peng
    #penghu.zh@gmail.com
    
    use strict;
    use 5.10.1;
    use CGI;
    use Encode;
    
    my $form_action = '/yxt/send.pl';
    
    my $q = CGI->new;
    
    my $smsMsg = '您的验证码为1232';
    
    print   $q->header(-type=>'text/html',-charset=>'UTF-8'),
        $q->start_html(-title=>'一信通短信平台测试'),
        $q->start_form(-action=>$form_action, -method=>'post'),
        $q->p({-align=>'center'},'一信通短信平台测试'),
    
            $q->start_table({-align=>'center',-border=>'0',-cellpadding=>'4',-cellspacing=>'0'}),
    
        $q->start_Tr,
        $q->start_td({-align=>'left'}),'短信内容:  '.$q->input({-id=>'smsMsg',-type=>'text',-name=>'smsMsg',-value=>$smsMsg}),$q->end_td,
        $q->end_Tr,
    
        $q->start_Tr,
        $q->start_td({-align=>'left'}),'接收号码:  '.$q->input({-id=>'smsPhone',-type=>'text',-name=>'smsPhone',-title=>'多个号码用,隔开'}),$q->end_td,
        $q->end_Tr,
    
        $q->end_table,
    
        $q->p({-align=>'center'},$q->submit(-value=>'发 送')),
            $q->end_form,
            $q->br,
        $q->end_html;

    2. send.pl

    #!/usr/bin/perl -w
    
    #Hu Peng
    #penghu.zh@gmail.com
    
    use strict;
    use 5.10.1;
    use CGI;
    use Encode;
    use LWP::UserAgent;
    
    my $form_action = '/yxt/index.pl';
    my $q = CGI->new;
    
    sub sendSMS {
        my ($opt_u,$opt_p,$opt_r,$opt_m) = @_;
            my $msg = encode('gbk',decode('utf8',$opt_m));
    
            my $ua = LWP::UserAgent->new;
            my $url = 'http://js.ums86.com:8899/sms/Api/Send.do?SpCode=201971&LoginName='.$opt_u.'&Password='.$opt_p.'&MessageContent='.$msg.'&UserNumber='.$opt_r.'&SerialNumber=&ScheduleTime=&f=1';
            my $resp = $ua->get($url);
    
            if ($resp->is_success) {
                    my $message = encode('utf8',decode('gbk',$resp->decoded_content));
                    return "$message\n";
            }else{
                    return "HTTP GET error code: ".$resp->code.':'.$resp->message."\n";
            }
    }
    
    my $smsMsg = defined($q->param('smsMsg'))?$q->param('smsMsg'):'';
    my $smsPhone = defined($q->param('smsPhone'))?$q->param('smsPhone'):'';
    
    my $return = &sendSMS('YOUR_ACCOUNT','YOUR_PASSWORD',$smsPhone,$smsMsg);
    
    print   $q->header(-type=>'text/html',-charset=>'UTF-8'),
        $q->start_html(-title=>'一信通短信平台测试'),
        $q->start_form(-action=>$form_action, -method=>'post'),
        $q->p({-align=>'center'},'一信通短信平台测试'),
    
            $q->start_table({-align=>'center',-border=>'0',-cellpadding=>'4',-cellspacing=>'0'}),
    
        $q->start_Tr,
        $q->start_td({-align=>'left'}),'返回信息:  '.$return,$q->end_td,
        $q->end_Tr,
    
        $q->end_table,
    
        $q->p({-align=>'center'},$q->submit(-value=>'返 回')),
            $q->end_form,
            $q->br,
        $q->end_html;
  • 相关阅读:
    进程线程协程
    面向对象完善总结
    面向对象编程
    常用模块2
    python常用模块
    随机验证码模块(random)
    带有key参数的函数filter,map,max,min
    python内置函数、匿名函数、递归
    python迭代器与生成器
    如何添加title左侧的图标
  • 原文地址:https://www.cnblogs.com/hahp/p/4226326.html
Copyright © 2011-2022 走看看