打包好的NODE.JS短信接口DEMO示例
2021/9/26 17:11:06
本文主要是介绍打包好的NODE.JS短信接口DEMO示例,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
/* * * 接口类型:互亿无线触发短信接口,支持发送验证码短信、订单通知短信等。 * 账户注册:请通过该地址开通账户 http://user.ihuyi.com/?h9Dkn * 注意事项: *(1)调试期间,请使用用系统默认的短信内容:您的验证码是:【变量】。请不要把验证码泄露给其他人。 *(2)请使用 用户名 及 APIkey来调用接口,APIkey在会员中心可以获取; *(3)该代码仅供接入互亿无线短信接口参考使用,客户可根据实际需要自行编写; */ /** * Created by XadillaX on 14-2-12. * https://github.com/XadillaX/ihuyi106js */ String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) { if (!RegExp.prototype.isPrototypeOf(reallyDo)) { return this.replace(new RegExp(reallyDo, (ignoreCase ? "gi": "g")), replaceWith); } else { return this.replace(reallyDo, replaceWith); } }; var dom = require('xmldom').DOMParser; var _baseUri = "http://106.ihuyi.com/webservice/sms.php?method=Submit"; var _userAgent = "node-ihuyi106-module by 死月 (admin@xcoder.in)"; /** * iHuyi constructure. * @param account * @param password 查看密码请登录用户中心->验证码、通知短信->帐户及签名设置->APIKEY */ var iHuyi = function(account, password) { this.spidex = require("spidex"); this.spidex.setDefaultUserAgent(_userAgent); this.account = account; this.password = password; }; /** * send an SMS. * @param mobile * @param content * @param callback */ iHuyi.prototype.send = function(mobile, content, callback) { var data = { account : this.account, password : this.password, mobile : mobile, content : content }; this.spidex.post(_baseUri, function(html, status) { if(status !== 200) { callback(new Error("短信发送服务器响应失败。")); return; } html = html.replaceAll("\r", ""); html = html.replaceAll("\n", ""); html = html.replaceAll(" xmlns=\"http://106.ihuyi.com/\"", ""); //console.log(html); var doc = new dom().parseFromString(html); var result = doc.lastChild; var json = {}; for(var node = result.firstChild; node !== null; node = node.nextSibling) { json[node.tagName] = node.firstChild.data; } //console.log(json); if(json.code == "2") { callback(null, json.smsid); } else { callback(new Error(json.msg, parseInt(json.code))); } }, data, "utf8").on("err", function(e) { callback(e); }); }; module.exports = iHuyi;
这篇关于打包好的NODE.JS短信接口DEMO示例的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-15基于JSON的大型语言模型代理与Ollama及LangChain的应用
- 2024-11-15useCallback教程:React Hook入门与实践
- 2024-11-15React中使用useContext开发:初学者指南
- 2024-11-15拖拽排序js案例详解:新手入门教程
- 2024-11-15React中的自定义Hooks案例详解
- 2024-11-14受控组件项目实战:从零开始打造你的第一个React项目
- 2024-11-14React中useEffect开发入门教程
- 2024-11-14React中的useMemo教程:从入门到实践
- 2024-11-14useReducer开发入门教程:轻松掌握React中的useReducer
- 2024-11-14useRef开发入门教程:轻松掌握React中的useRef用法