Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有办法缩短PHP的HTTP响应?_Php_Http_Get - Fatal编程技术网

有没有办法缩短PHP的HTTP响应?

有没有办法缩短PHP的HTTP响应?,php,http,get,Php,Http,Get,我正在使用一个嵌入式数据采集系统,该系统使用Telit GSM调制解调器将传感器数据传输到web。我目前正在通过一个简单的GET请求将数据发送到一个php脚本。我遇到的问题是HTTP响应相当大(~220字节)。我目前有一个非常便宜的8Mb/mo数据计划,并且正在尝试最小化每次传输所需的字节数。我已经考虑过压缩一些传出数据,但潜在的收益相当小。由于响应除了表示请求成功(我甚至不解析或使用它)之外没有任何用处,因此我希望将其剪切或至少缩短(例如,响应代码) 有人知道如何从PHP实现这一点吗?我已经研

我正在使用一个嵌入式数据采集系统,该系统使用Telit GSM调制解调器将传感器数据传输到web。我目前正在通过一个简单的GET请求将数据发送到一个php脚本。我遇到的问题是HTTP响应相当大(~220字节)。我目前有一个非常便宜的8Mb/mo数据计划,并且正在尝试最小化每次传输所需的字节数。我已经考虑过压缩一些传出数据,但潜在的收益相当小。由于响应除了表示请求成功(我甚至不解析或使用它)之外没有任何用处,因此我希望将其剪切或至少缩短(例如,响应代码)

有人知道如何从PHP实现这一点吗?我已经研究了header()函数,到目前为止没有任何结果。我考虑的另一个选择是将请求发送到服务器程序(比如说端口15000而不是80),然后从那里向我的php脚本发出另一个请求,但这看起来很奇怪。在我用来访问mysql的学生服务器上,我没有合适的库,我也在使用phpCurl,否则我可以使用一个简单的服务器程序

有什么想法吗?我们的服务器正在运行PHP版本5.4.4


Luke

为了缩短您的响应时间,我会检查HTTP服务器本身。也就是说,你不会变得太小


我可能会研究传感器传输,它是一个非常轻量级的协议。

一旦PHP脚本完成工作,您应该能够简单地告诉它:

die();


然后,您可以查找一个数字状态(或者仅仅是来自服务器的200响应)。在捕获响应数据之前,您可能必须检查代码,以确保响应数据没有在代码的其他地方输出。输出缓冲可能会有所帮助-

也许您可以托管一些应用程序,这些应用程序实现一个侦听套接字,您的设备将其数据发送到该套接字


您可以使用分隔符或指示消息大小的前缀组成一些只读协议。这样,您只能发送所需的数据,而不会产生任何开销(如HTTP)。

您可以改为通过TCP连接发送数据吗?当然,在这种情况下,我假设您有自己的服务器计算机。我用Python中的Twisted编写了一个简单的TCP服务器,用于与我的Telit GM862-GPS模块通信。然后,您可以对TCP服务器进行编码,将其上载到其他位置


如果您正在将数据上传到其他网站(如twitter),我认为您没有很多选择来最小化数据大小。

您认为每月会收到多少请求?因为你还有四万块的空间。这种方式很古老,从来没有正确地投票/选择过这个答案。这就是我最后所做的,而且效果很好。我想如果我再做一次,我会使用MQTT(正如Xorlev所建议的)。我已经为一个不同的项目实现了它,我真的很喜欢它。我认为这是最好的方法,尽管还有其他一些很酷的轻量级协议。
$status = 1;
die($status);