1

我有一个黑莓程序,它使用 http post 请求将数据发送到后端。现在该代码在我的模拟器(OS 5/6/7)甚至真实设备上都能完美运行,但在某些国家/地区的其他一些设备上,使用带有 http 错误代码 400(错误请求)的 3g 但通过 WiFi 连接失败好的..经过调查,我意识到那些电信运营商的 bis-b 代理由于大小(> 7kb)而“阻止”/“拒绝”发布请求。问题是我无法缩短请求大小,所以关于如何解决这个问题的任何想法?任何将不胜感激。谢谢

编辑 这是通过 BIS 连接时使用的连接字符串。

deviceside=false;connectionUID=GPMDSXXXX;ConnectionType=mds-public (XXXX varies from network to network)

经过进一步检查,我意识到“工作”连接使用 BIS_B TransportDescriptor 类型 (5) 进行连接,而“失败”连接使用 TCP_CELLULAR (1) 进行连接。即要求connectionDescriptor.getTransportDescriptor().getTransportType()工作连接给出5,而失败的连接给出1。任何想法为什么会发生这种情况?

4

1 回答 1

1

尝试使用 HTTPS。在这种情况下,承运人无法嗅出里面到底是什么。

于 2012-07-04T13:10:45.057 回答