HTTP协议以明文方式发送内容,不提供任何方式的数据加密,容易被攻击者截取,造成信息泄露,使用户遭受损失。
为解决这一安全问题,华信平台接口升级为HTTP的安全版:HTTPS,HTTPS是由SSL(安全套接字层)+HTTP构建可进行加密传输、身份认证的网络协议。建议您尽快升级,华信将在合适时间停止HTTP接口支持。
1. 升级到https接口常见问题及解决方案
华信平台现提供给用户的开发接口有两种,一是标准Web Service接口,一是aspx接口,并提供了c#,java,php,python, delphi,powerbuilder等常用开发语言的DEMO示例程序,下面按不同程序语言结合相应DEMO程序,列举在使用华信短信HTTPS接口开发时由于证书认证经常遇到的问题及解决方案以及一些推荐开发方式。
1.1 C#
l 组件引用问题:
C#版本的Demo(新版本,Huaxin.MessageSend.Demo)程序使用vs2015开发,其中引用了Http Client组件,这个组件更高效,使用更简单,用vs2015打开后直接编译就可,如果编译不通过,可在项目中右键点击“引用”,选择“管理Nuget安装包”,恢复引用的组件,完成后重新编译即可。
l SOAP方式发送(对应SendViaSoap.cs文件)
PlanSendTime(计划发送时间,即定时短信)字段,必须是UTC时间格式,如:2016-12-06T08:09:10+08:00。
1.2 JAVA
l 开发、运行环境:demo程序开发环境是JSE1.8,HttpClient4.5.2,低版本的JSE和HttpClient组件用法上稍有区别,请大家注意自己开发环境与DEMO开发环境异同。
l SSLClient.java类实现了服务器证书认证逻辑,遇到有用户会报告证书路径错误之类的问题,检查对此文件的引用,或者将服务器证书安装到本地。
l SOAP方式发送(SendViaWs.java)问题参考上面C#节相关描述
1.3 PHP
l 开发、运行环境:基于php7.0开发,php5.0也基本兼容,太低版本建议升级。
l SOAP方式发送(SendViaWs.java)时遇到SoapClient错误,一般是用户PHP环境设置问题造成的,以windows为例,需要检查php.ini配置,要打开以下几个扩展:
extension=php_soap.dll
extension=php_curl.dll
extension=php_openssl.dll
linux环境下类似,自行查阅相关php配置安装资料。
1.4 PYTHON
l 开发、运行环境:python3.5.2,由于python2.x与python3.x语法等相差较大,本demo程序可能在python2.x环境下不能正常运行。
1.5 其他
l Delphi版本开发环境为 Delphi XE8。
l Powerbuilder现在只有aspx接口的demo示例。
1.6 用户接口开发注意事项及推荐
l 编码格式为UTF-8
l 通过SOAP方式发送时时间格式为UTC时间,必须注意其格式,完整UTC格式示例如下:2016-12-06T08:09:10+08:00,国内可简略写为:2016-12-06T08:09:10
l 调试过程常见问题:
n 返回2XX状态,说明网络服务通畅,服务器正常返回了结果,一般是本地错误,首先检查本地代码或开发环境原因;
n 返回是4XX状态,则检查服务器接口url是否拼写正确;
n 返回是5XX状态,则是服务器错误,可以检查参数合法性,并联系华信技术解决;
n 如果什么状态也没返回,超时错误,则很可能是客户端网络配置,如DNS,路由等网络参数设置不正确等原因造成的。
l 虽然现在还提供HTTP接口,但建议尽量使用用https,因http现在只是为兼容老用户,未来会取消支持。
l 推荐用户用Web Service 接口方式发送短信,便于未来版本向跨平台支持移植,但目前Web Service接口功能不如aspx全,需另安排时间补全,然后逐步淘汰aspx接口。
l 使用aspx接口开发时,使用POST提交,不要使用GET提交。
所谓“GET提交”并不准确,因为在HTTP中“GET”指的是请求,即向HTTP服务器请求某个特定的内容。
GET提交会把所有的参数都附在URL之后,作为请求参数提交给服务器,这样在网络传输过程中极其不安全,尤其是没有使用HTTPS接口的用户,且有长度等方面的限制,还得注意urlecode编码的问题。
答:因为客户太多,发送的信息量比较大、占用的容量比较大,容量也是有限的。所以会定期来清理容量,谢谢!
答:因为群发信息是直接对接运营商的机房的,才可以大量的发送。不显示您的手机号码,是因为给你手机号码没有关系。
答:平台的保密性 我们是可以签订保密协议的。这个你可以放心。
提供公司的信息。我们会核实信息的真实性。如果核对无误。我们会给您恢复密码的。
答:导入数据是要先建一个文本文档的,保证您的数据都在文档中,这样按步骤操作应该是没有问题的,如果还是不行,那就复制---粘帖 就可以的。
答:出现乱码 一般就是接口出现问题 或许没有接好 导致的,这个可以尽快联系技术或客服,谢谢
答:这个要根据内容来走通道的,因为有的通道是走通知的,有的通道是发商业广告的,长短信和普通短信通道也是走不一样的通道的,具体询问销售或者客服。
答: 手机关机或者不在服务区超过48小时。
手机欠费、手机停机。
手机是否装有拦截软件。
是否拦截在垃圾短信箱了。
手机信箱是否已满。
手机短信中心设置可能有问题。
以上问题都有可能导致手机收不到信息。
答:检查是否还有余额?
短信中是否有被屏蔽的敏感词?
答:检查是否防火墙是否有拦截?可通过打开华信官方网站来验证。
检查是否防火墙是否拦截了90和8080端口,可以通过telnet命令来验证。
答:这个跟运营商的网络有关,例如节假日、春节、中秋节短信发送量大造成短信阻塞,再一个就是发送也有一个过程,大批量发送自然会有先后次序。
答:发送短信的费用是根据一次性充值的条数来定的,具体可以咨询售前,售前会给您个详细的方案。
答:我们平台接通多条移动、联通、电信通道,所以是支持三网一起发送的。
答:移动、联通和电信一般普通短信是70字/条计费。如果是发长短信是按67+67+67这样的字数来计费的。长短信最多支持300字。
答:不是的,企业短信禁止发送非法内容如破坏国家统一的;损害国家荣誉利益的;破坏国家宗教政策,宣扬邪教迷信的;散布谣言,扰乱破坏社会秩序稳定的;侮辱或诽谤他人,侵害他人合法权益的;含有诈骗、涉黄、涉毒、赌博、法律、违法等行政法规、政策禁止的内容。