php和javascript的get和post方式 有人串口转wifi模块httpdclient网页交互通信成功源码2 wifi继电器小黄人软件ypnr

来源:互联网 发布:石材仿形机编程说明书 编辑:程序博客网 时间:2024/04/30 13:29

全部源码下载:链接: http://pan.baidu.com/s/1qXxr0i4 密码: 


有人串口转wifi模块 httpd client通信示例-用户使用网页通过服务器收发串口数据get


功能:用户使用网页通过服务器收发串口数据,转发信息通过文件转存。网页自动更新串口发来的数据,网页发送数据到串口,串口接收要定时发请求查有没有数据。


参数:
网页端地址:www.xhrrj.com/index.php
服务器域名为:www.xhrrj.com
串口端IP看是否是公网IP,不是的话用花生壳代理
固件版本要支持httpdclient


设备型号:买的型号是WIFI模块 串口转WIFI TI CC3200方案 无线透传通讯 工业级 低功耗  
 https://detail.tmall.com/item.htm?spm=a1z10.5-b.w4011-5602068913.20.bIKdyQ&id=43794523227&rn=9e112109775053b8e8a8a0adb2dc43b0&abbucket=4
C322设置
1.串口我用websock测试是正常的,wifi也连上了路由器。版本是1.0.0
2.socket模式: httpdclient
HTPC方式:GET
返回数据去掉包头 使能:Enable
HTPC IP(或服务器地址):www.xhrrj.com
HTPC PORT: 80
HTPC URL(仅对POST): NONE
HTPC HEAD(NONE为无HEAD头):NONE


示例使用说明:
1.网页发送0号ID串口数据“1111”,直接在网页ID框输入0,发送框输入1111,点发送。
  网页自动接收串口数据。


2.0号ID串口发送数据345到网页   http://www.xhrrj.com/test3.php?user=U&uid=0&type=T&data=345&time=不同的随机数
  0号ID串口接收数据请求要定时这条指令查询  http://www.xhrrj.com/test3.php?user=U&uid=0&type=R&data=0&time=不同的随机数
  参数说明:user=U固定。uid为串口id号,可以随意设置,但要与网页对应。type为发送T和接收R。data为要发送的数据,接收时随设。time要设为不相同的随机数。



get源码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>有人串口转wifi模块 httpd client通信使用说明 by小黄人软件</title></head><body> <div class="div_c"  style="font-family:微软雅黑;margin-top:10px;"><form name="form_socket_work_setting" ><div class="STYLE2 STYLE3">有人串口转wifi模块 httpd client通信使用说明 by小黄人软件</div><div id="socket_Webuart" style="margin-top: 10px; display: block;">  ID<input id="Write_uart_data_text_id" style="width: 465px; margin-top: 10px;" size="64" maxlength="64" value="0">  <!--<button id="close" onClick="usr_close();">Close</button>-->    <div>    <textarea id="UartReadAsciiText" style="margin-top: 10px;" rows="8" cols="64" ></textarea>      <input id="Uart_Rec" onclick="Rec()" type="button" value="接收" ;style="margin-top:10px">    <input id="Uart_clear_id" onclick="Clear()" type="button" value="清空接收" ;style="margin-top:10px">  </div>  <div>    <input id="Write_uart_data_text" style="width: 465px; margin-top: 10px;" size="64" maxlength="64" value="1234">    <input onclick="Send()" type="button" value="发送" ;="" ;id="Uart_send_id">  </div><div id="Status"></div></div></div></div><script type="text/javascript">      function Clear(){          document.getElementById("UartReadAsciiText").value="";          }      function Send(){  var xmlhttp;  if (window.XMLHttpRequest)    {// code for IE7+, Firefox, Chrome, Opera, Safari    xmlhttp=new XMLHttpRequest();    }  else    {// code for IE6, IE5    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");    }  xmlhttp.onreadystatechange=function()    {    if (xmlhttp.readyState==4 && xmlhttp.status==200)      {          //alert("返回:"+xmlhttp.responseText); document.getElementById("Status").innerHTML=xmlhttp.responseText;      }    }       var url = "/test3.php?user=C&uid="+document.getElementById("Write_uart_data_text_id").value+"&type=T&data="+document.getElementById("Write_uart_data_text").value+ "&time"+new Date().getTime() ; // alert(url);  xmlhttp.open("GET",url,true);  xmlhttp.send();          }      function Rec()      {      var xmlhttp;  if (window.XMLHttpRequest)    {// code for IE7+, Firefox, Chrome, Opera, Safari    xmlhttp=new XMLHttpRequest();    }  else    {// code for IE6, IE5    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");    }  xmlhttp.onreadystatechange=function()    {    if (xmlhttp.readyState==4 && xmlhttp.status==200)      {  if(xmlhttp.responseText.length!=8)  {          document.getElementById("UartReadAsciiText").innerHTML=document.getElementById("UartReadAsciiText").value+xmlhttp.responseText;var d = document.getElementById("UartReadAsciiText").scrollHeight;document.getElementById("UartReadAsciiText").scrollTop = d;  } document.getElementById("Status").innerHTML=xmlhttp.responseText; //  alert("接收到数据:"+xmlhttp.responseText+"A");             }    }var url = "/test3.php?user=C&uid="+document.getElementById("Write_uart_data_text_id").value+"&type=R&data=" + new Date().getTime() ; //alert(url);  xmlhttp.open("GET",url,true);  xmlhttp.send();  //清除浏览器缓存       }   window.setInterval("Rec()", 1000);   //指定1秒刷新一次 接收  </script></body></html>


test3.php

<?php//专门处理数据//http://localhost/test3.php?user=C&uid=0&type=R&data=345//收发总日志//date_default_timezone_set('Asia/Shanghai');//$data=$_GET['user']." ".$_GET['uid']." ".$_GET['type']." ".$_GET['data']." ".date("Y-m-d H:i:s")."\r\n";//file_put_contents('USR_DATA.txt',$data,FILE_APPEND);//echo $data;$user=$_GET["user"]; //C??? U????$uid=$_GET["uid"]; //0 1 2 ?? ????ID$type=$_GET["type"]; //T???? R????$data=$_GET["data"]; //????if($type=="T"){$filename=$user.$uid.".txt";file_put_contents($filename,$data,FILE_APPEND); //存echo "Send OK";}else{//从发的对象中读if($user=="C") $user="U";else$user="C";$filename=$user.$uid.".txt";$content = @file_get_contents($filename); //读echo "Rec OK".$content;file_put_contents($filename,""); //存"" 即清空}?>





post源码:
    index.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>有人串口转wifi模块 httpd client通信使用说明 by小黄人软件</title></head><body> <div class="div_c"  style="font-family:微软雅黑;margin-top:10px;"><form name="form_socket_work_setting" ><div class="STYLE2 STYLE3">有人串口转wifi模块 httpd client通信使用说明 by小黄人软件</div><div id="socket_Webuart" style="margin-top: 10px; display: block;">  ID<input id="Write_uart_data_text_id" style="width: 465px; margin-top: 10px;" size="64" maxlength="64" value="0">  <!--<button id="close" onClick="usr_close();">Close</button>-->    <div>    <textarea id="UartReadAsciiText" style="margin-top: 10px;" rows="8" cols="64" ></textarea>      <input id="Uart_Rec" onclick="Rec()" type="button" value="接收" ;style="margin-top:10px">    <input id="Uart_clear_id" onclick="Clear()" type="button" value="清空接收" ;style="margin-top:10px">  </div>  <div>    <input id="Write_uart_data_text" style="width: 465px; margin-top: 10px;" size="64" maxlength="64" value="1234">    <input onclick="Send()" type="button" value="发送" ;="" ;id="Uart_send_id">  </div><div id="Status"></div></div></div></div><script type="text/javascript">      function Clear(){          document.getElementById("UartReadAsciiText").value="";          }      function Send(){  var xmlhttp;  if (window.XMLHttpRequest)    {// code for IE7+, Firefox, Chrome, Opera, Safari    xmlhttp=new XMLHttpRequest();    }  else    {// code for IE6, IE5    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");    }  xmlhttp.onreadystatechange=function()    {    if (xmlhttp.readyState==4 && xmlhttp.status==200)      {          //alert("返回:"+xmlhttp.responseText); document.getElementById("Status").innerHTML=xmlhttp.responseText;      }    }       var url = "/test3.php"; // alert(url);  xmlhttp.open("POST",url,true);  xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");  xmlhttp.send("user=C&uid="+document.getElementById("Write_uart_data_text_id").value+"&type=T&data="+document.getElementById("Write_uart_data_text").value+ "&time"+new Date().getTime() );          }      function Rec()      {      var xmlhttp;  if (window.XMLHttpRequest)    {// code for IE7+, Firefox, Chrome, Opera, Safari    xmlhttp=new XMLHttpRequest();    }  else    {// code for IE6, IE5    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");    }  xmlhttp.onreadystatechange=function()    {    if (xmlhttp.readyState==4 && xmlhttp.status==200)      {  if(xmlhttp.responseText.length!=8)  {          document.getElementById("UartReadAsciiText").innerHTML=document.getElementById("UartReadAsciiText").value+xmlhttp.responseText;var d = document.getElementById("UartReadAsciiText").scrollHeight;document.getElementById("UartReadAsciiText").scrollTop = d;  } document.getElementById("Status").innerHTML=xmlhttp.responseText; //  alert("接收到数据:"+xmlhttp.responseText+"A");             }    }var url = "/test3.php"; //alert(url);  xmlhttp.open("POST",url,true);  xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");  xmlhttp.send("user=C&uid="+document.getElementById("Write_uart_data_text_id").value+"&type=R&data=" + new Date().getTime() );  //清除浏览器缓存       }   window.setInterval("Rec()", 1000);   //指定1秒刷新一次 接收  </script></body></html>

  
test3.php

<?php//专门处理数据//http://localhost/test3.php?user=C&uid=0&type=R&data=345//收发总日志//date_default_timezone_set('Asia/Shanghai');//$data=$_POST['user']." ".$_POST['uid']." ".$_POST['type']." ".$_POST['data']." ".date("Y-m-d H:i:s")."\r\n";//file_put_contents('USR_DATA.txt',$data,FILE_APPEND);//echo $data;$user=$_POST["user"]; //C??? U????$uid=$_POST["uid"]; //0 1 2 ?? ????ID$type=$_POST["type"]; //T???? R????$data=$_POST["data"]; //????if($type=="T"){$filename=$user.$uid.".txt";file_put_contents($filename,$data,FILE_APPEND); //存echo "Send OK";}else{//从发的对象中读if($user=="C") $user="U";else$user="C";$filename=$user.$uid.".txt";$content = @file_get_contents($filename); //读echo "Rec OK".$content;file_put_contents($filename,""); //存"" 即清空}?>

indexuart.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>模拟串口---有人串口转wifi模块 httpd client通信使用说明 by小黄人软件</title></head><body> <div class="div_c"  style="font-family:微软雅黑;margin-top:10px;"><form name="form_socket_work_setting" ><div class="STYLE2 STYLE3">模拟串口---有人串口转wifi模块 httpd client通信使用说明 by小黄人软件</div><div id="socket_Webuart" style="margin-top: 10px; display: block;">  ID<input id="Write_uart_data_text_id" style="width: 465px; margin-top: 10px;" size="64" maxlength="64" value="0">  <!--<button id="close" onClick="usr_close();">Close</button>-->    <div>    <textarea id="UartReadAsciiText" style="margin-top: 10px;" rows="8" cols="64" ></textarea>      <input id="Uart_Rec" onclick="Rec()" type="button" value="接收" ;style="margin-top:10px">    <input id="Uart_clear_id" onclick="Clear()" type="button" value="清空接收" ;style="margin-top:10px">  </div>  <div>    <input id="Write_uart_data_text" style="width: 465px; margin-top: 10px;" size="64" maxlength="64" value="1234">    <input onclick="Send()" type="button" value="发送" ;="" ;id="Uart_send_id">  </div><div id="Status"></div></div></div></div><script type="text/javascript">      function Clear(){          document.getElementById("UartReadAsciiText").value="";          }      function Send(){  var xmlhttp;  if (window.XMLHttpRequest)    {// code for IE7+, Firefox, Chrome, Opera, Safari    xmlhttp=new XMLHttpRequest();    }  else    {// code for IE6, IE5    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");    }  xmlhttp.onreadystatechange=function()    {    if (xmlhttp.readyState==4 && xmlhttp.status==200)      {          //alert("返回:"+xmlhttp.responseText); document.getElementById("Status").innerHTML=xmlhttp.responseText;      }    }       var url = "/test3.php"; // alert(url);  xmlhttp.open("POST",url,true);  xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");  xmlhttp.send("user=U&uid="+document.getElementById("Write_uart_data_text_id").value+"&type=T&data="+document.getElementById("Write_uart_data_text").value+ "&time"+new Date().getTime() );          }      function Rec()      {      var xmlhttp;  if (window.XMLHttpRequest)    {// code for IE7+, Firefox, Chrome, Opera, Safari    xmlhttp=new XMLHttpRequest();    }  else    {// code for IE6, IE5    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");    }  xmlhttp.onreadystatechange=function()    {    if (xmlhttp.readyState==4 && xmlhttp.status==200)      {  if(xmlhttp.responseText.length!=8)  {          document.getElementById("UartReadAsciiText").innerHTML=document.getElementById("UartReadAsciiText").value+xmlhttp.responseText;var d = document.getElementById("UartReadAsciiText").scrollHeight;document.getElementById("UartReadAsciiText").scrollTop = d;  } document.getElementById("Status").innerHTML=xmlhttp.responseText; //  alert("接收到数据:"+xmlhttp.responseText+"A");             }    }var url = "/test3.php"; //alert(url);  xmlhttp.open("POST",url,true);  xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");  xmlhttp.send("user=U&uid="+document.getElementById("Write_uart_data_text_id").value+"&type=R&data=" + new Date().getTime() );  //清除浏览器缓存       }   window.setInterval("Rec()", 1000);   //指定1秒刷新一次 接收  </script></body></html>

另外:


WIFI远程控制Android 网络通信控制3继电器收发指令 源码开发定制




APK安装包:链接: http://pan.baidu.com/s/1bnmaMej 密码: ea3b

调试助手:链接: http://pan.baidu.com/s/1hqHEBkw 密码: phi4

一、功能:

1.Android  WIFI连接与断开,保存连接IP及端口。

2.WIFI控制3个继电器

3.16进制发送指令,可以单条和多条发送,用逗号隔开。

4.16进制接收

如需特别功能可以找我定制





























参考********************************************************************************
设置示例:http://www.usr.cn/Faq/137.html   
 http://www.usr.cn/Faq/139.html
 http://www.usr.cn/Case/56.html
 http://www.usr.cn/Case/30.html
 M4系列串口服务器HTTPD_Client通信示例 http://www.usr.cn/Case/30.html






补充:
说明:固件版本1.2以上支持HTTPD_Client功能
你的要升级一下固件


1.服务器发送串口“1111”。
你复制下面链接到地址中,回车
http://你的域名/test3.php?data=1111


2.服务器接收串口,会直接显示在网页界面上,并保存在服务器USR_DATA.txt文件里。请用ASCII模式


买的型号是WIFI模块 串口转WIFI TI CC3200方案 无线透传通讯 工业级 低功耗  
 https://detail.tmall.com/item.htm?spm=a1z10.5-b.w4011-5602068913.20.bIKdyQ&id=43794523227&rn=9e112109775053b8e8a8a0adb2dc43b0&abbucket=4


使用httpd client模式与服务器通信,串口发送1234,返回(串口接收) bad request。服务器未收到串口发的数据。是什么原因?如何办?




服务器代码test3.php源码,放在根目录下 用网页测试http://www.cnkhai.cn/test3.php?data=1111,服务器端是正常的
<?php
echo $_GET["data"];
date_default_timezone_set('Asia/Shanghai');
$data=$_GET['data']." ".date("Y-m-d H:i:s")."\r\n";
file_put_contents('USR_DATA.txt',$data,FILE_APPEND);
?>







参考2:


外网通信有三种方式:1.路由器端口映射 2.使用我们D2D服务器 3.使用您自己的服务器
最简单的是第一种,方法:http://www.usr.cn/Faq/156.html、http://www.usr.cn/Faq/64.html
如果满足不了第一个条件可使用我们的服务器方式在附件,如果您的固件大于4.02.11.15,为5开头固件则可跳过升级固件步骤。
第三种方式最为复杂,要求最多http://www.usr.cn/Faq/110.html


Accept::text/xml|Keep-Alive:300


data就是各设备的标识,多个设备加入多个不同的字段
http://test.usr.cn/test.php?data=1111


http://localhost/test.php?data=1111


http://localhost/test3.php/?data=1234


<?php
echo $_GET["data"];
date_default_timezone_set('Asia/Shanghai');
$data=$_GET['data']." ".date("Y-m-d H:i:s")."\r\n";
file_put_contents('USR_DATA.txt',$data,FILE_APPEND);
?>











0 0
原创粉丝点击