因开发需要,调用POST数据的短信发送接口,折腾了2个小时后,搞定。
$ip = "116.52.157.***";
$masuserid = "masuserid";
$masuserpwd = "masuserpwd";
$interface = "linkinter";
$dbname = "masdb";
$userid = "testph";
$mobile = "13529013021";
$content = "hello world";
$url ="http://116.52.157.***/SendMessage";
$curlPost = 'mas_server_ip='.$ip.'&mas_user_id='.$masuserid.'&mas_user_pwd='.$masuserpwd.'&mas_interface='.$interface.'&mas_db_name='.$dbname.'&user_id='.$userid.'&mobiles='.$cellphone.'&content='.$content.'';
$ch = curl_init(); //初始化curl
curl_setopt($ch,CURLOPT_URL,$url); //抓取制定网页
curl_setopt($ch,CURLOPT_HEADER, 0); //设置Header
curl_setopt($ch,CURLOPT_POST, 1); //采用POST提交方式
curl_setopt($ch,CURLOPT_POSTFIELDS,$curlPost);
$result = curl_exec($ch); //运行curl
curl_close($ch);
关于curl:
curl是一个利用URL语法规范来传输文件和数据的工具,支持多种协议,如:HTTP、FTP等。
当然,有时候我们想获取某个网页内容时,可以直接采用file_get_contents函数,但是这些函数不支持高难度操作,如:表单验证、数据上传等。
PHP支持的curl操作,可以很好的解决这些问题,对于POST类型的API调用,尤为适用。