来自as3客户端的Http post数据在php中丢失或篡改

来自as3客户端的Http post数据在php中丢失或篡改,php,actionscript-3,http,post,Php,Actionscript 3,Http,Post,我们遇到了一个奇怪的问题。我们有一个基于as3和php的facebook应用程序,它有50万MAU。在一天中,我们从as3客户端发送到php服务器的数据有很多次要么完全/部分丢失,要么文本数据被一些奇怪的字符(例如“!@#$%”)替换。这种情况每天发生在总请求的2%/3%(平均每天500万个请求)上 另外,从应用程序日志中,我们可以看到,对于从服务器发送到客户端的大数据,响应主体正在被截断。每天平均有5%的响应发生。是由于网络中的数据包丢失,还是由于web服务器或flash客户端的错误 我们无法

我们遇到了一个奇怪的问题。我们有一个基于as3和php的facebook应用程序,它有50万MAU。在一天中,我们从as3客户端发送到php服务器的数据有很多次要么完全/部分丢失,要么文本数据被一些奇怪的字符(例如“!@#$%”)替换。这种情况每天发生在总请求的2%/3%(平均每天500万个请求)上

另外,从应用程序日志中,我们可以看到,对于从服务器发送到客户端的大数据,响应主体正在被截断。每天平均有5%的响应发生。是由于网络中的数据包丢失,还是由于web服务器或flash客户端的错误


我们无法找出问题的根源。对于http请求/响应的可靠性,我们需要做哪些具体的事情。或者,它发生在所有每天都没有大量用户访问的web应用程序中,我们需要永远容忍这种情况?如果您有任何帮助,我们将不胜感激。

您能否发布一些数据被破坏的例子?当它离开时应该是什么,当它到达PHP时是什么?1。来自AS3的帖子正文:{“params”:“state=completed | count=0 | name=Give'em Hell!”,“action”:“saveUserAchization”},在PHP中它被作为{“params”:“state=completed | count=0 | name=Give'em@#!*%!,“action”:“saveUserAchization”}接收。2.来自AS3客户端的帖子正文:params=count=1 | productName=Scout | col=10 | row=24 | item|u identifier=Barracks&action=saveStartFactoryProduction&header=userId=60,time=03:27:20 PM,protocolVersion=1_0_70,在服务器中作为header=userId=60,time=03:27:20 PM=1_0_70接收。3.类似地,我们从服务器发送一个长json字符串,但在clnt中我们接收一部分。在第一个字符串中,单词
Hell
似乎已被删除。我不知道为什么会这样,这似乎就是发生的事情。第二个我想说的是,它被视为
application/x-form-www-urlencoded
,因此(在PHP中)最终会设置
$\u POST['params']
$\u POST['action']
,以及
$\u POST['header']
。你认为我的总结是正确的吗?此外,如果是这样,会发生什么?实际上,所有帖子都是url编码的,因为我们正在使用as3 lib中的URLRequest并在URLRequest.data中设置数据。如果这是编码的,如何审查“hell”一词?第二个帖子也编码为“application/x-form-www-urlencoded”,我们将整个数据作为json字符串写入名为batchRequest=“”的键中。我们从服务器端取出值并进行json解码,使用分隔符分割响应。有没有解释为什么字符串的某些部分丢失了。为什么没有在所有情况下发生这些情况?相同类型的请求只在大多数情况下有效,在少数情况下失败。为什么很少?AS3错误?听起来你的工作应该是有效的。。。恐怕我没钱了。关于审查——这通常是一个客户端设置(虽然我不知道AS3中有这样的设置,而且不管怎么说,这似乎是一件奇怪的事情——但这确实是它看起来的样子)。问题是否仅限于选定的一组客户机,还是随机发生在所有客户机上?