[C++] 基于创蓝253云通讯paas平台c/c++短信接口 demo 【仅供参考】
#include <arpa/inet.h>
#include <assert.h>
#include <errno.h>
#include <netinet/in.h>
#include <signal.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/wait.h>
#include <netdb.h>
#include <unistd.h>
#define SA struct sockaddr
#define MAXLINE 4096
#define MAXSUB 2000
#define MAXPARAM 2048
#define LISTENQ 1024
//线上线下接口宏开关
#define ONLINE
extern int h_errno;
int sockfd;
char *hostname = "123.59.105.84";
char *send_sms_uri = "/msg/send";
char *query_balance_uri = "/msg/balance";
/**
* * 发http post请求
* */
ssize_t http_post(char *page, char *poststr)
{
char sendline[MAXLINE + 1], recvline[MAXLINE + 1];
ssize_t n;
snprintf(sendline, MAXSUB,
"POST %s HTTP/1.0\r\n"
"Host: sms.253.com\r\n"
"Content-type: application/x-www-form-urlencoded\r\n"
"Content-length: %zu\r\n\r\n"
"%s", page, strlen(poststr), poststr);
write(sockfd, sendline, strlen(sendline));
printf("\n%s", sendline);
printf("\n--------------------------\n");
while ((n = read(sockfd, recvline, MAXLINE)) > 0) {
recvline[n] = '\0';
printf("%s\n", recvline);
}
return n;
}
/**
* * 查账户余额
* */
ssize_t get_balance(char *un, char *pw)
{
char params[MAXPARAM + 1];
char *cp = params;
sprintf(cp,"un=%s&pw=%s", un, pw);
return http_post(query_balance_uri, cp);
}
/**
* * 发送短信
* */
ssize_t send_sms(char *un, char *pw, char *phone, char *msg)
{
char params[MAXPARAM + 1];
char *cp = params;
sprintf(cp,"un=%s&pw=%s&phone=%s&msg=%s&rd=1", un, pw, phone, msg);
return http_post(send_sms_uri, cp);
}
int main(void)
{
struct sockaddr_in servaddr;
char str[50];
//建立socket连接
sockfd = socket(AF_INET, SOCK_STREAM, 0);
bzero(&servaddr, sizeof(servaddr));
servaddr.sin_addr.s_addr = inet_addr(hostname);
servaddr.sin_family = AF_INET;
servaddr.sin_port = htons(80);
inet_pton(AF_INET, str, &servaddr.sin_addr);
connect(sockfd, (SA *) & servaddr, sizeof(servaddr));
char *un = "账号";
char *pw = "密码";
char *phone = "手机号";
//必须带签名
char *msg = "【253云通讯】您的验证码是123400";
//get_balance(un, pw);
send_sms(un, pw, phone, msg);
close(sockfd);
exit(0);
}
分享到:
相关推荐
c++短信接口开发_c++发送短信验证码通知_c++短信demo示例.docx
用c++编写的获取验证码的程序,验证码是通过bmp位图来获取的 含源程序及bmp图片
这里是最基础的短信接口代码,一般的云短信平台没有c++的mode,供网友观看指点(每个平台的接口都不一样,视情况而定接口代码,不过大致框架都一样) 本人登录的是 “云.短信网”,网址:http://www.yunsms.cn/ ,...
C++ lua 验证码图片 vs2008 简单
C++实现56dxw短信验证码WebService接口。 编译工具gsoap-2.8.zip 因为长名字关系,请到根目录解压后再拷贝进来,直接解压可能会解压报错。 用VS.NET2003 开发游戏程序的时候,有一个登录功能模块,需要短信验证码。...
C++ lua 验证码图片 控制台程序 vs2008编译 非常简单
短信接口C程序源码,完整程序模块,可直接应用。
使用c++实现的手机卡的短信接收,发送.简单实用.
我写的C++图形验证码识别, 注释很全.再菜的人也能看明白. 能明白验证码识别的基本原理. VS2010下测试通过.
C++ 验证码识别 (CodeDemo)
VC++验证码生成Base64验证码png图片程序,如何使用VC++生成验证码图片,输出Base64图片给网页调用
C++验证码小程序
C++验证码确认 模仿瑞星禁用所有功能时弹出的验证码确认窗口 源代码
使用C++语言实现的简单验证码识别程序,能够识别一般的BMP图象.
编写的发送手机短信 c++ 源码 c++ 源码
主要是通过第三方服务,云信使,实现基于QT的短信验证码方面的功能,在日常的开发中经常会遇到。在使用此demo前,必须在其官网http://sms.sms.cn上,进行账号的注册。
稳定、快速和安全的云端远程答题和验证码识别服务平台. 优质的验证码代答和验证码识别软件服务
1.阿里云发送短信C++源码 2.VS2019编译实测通过 3.相关Key 需要替换成自己申请的
经典的手机短信收发程序,可直接将需要的类加人自己的工程中,调用其中的函数就OK了!
主要利用了ihtmldocument2获取ie中的验证码图片,再利用tesseract对验证码图片进行识别,利用js将识别结果输入到验证码框