HTTP POST request over GPRS doesn't work.

Discussion in 'Technical' started by hiharsh, Jul 23, 2008.

  1. hiharsh

    hiharsh New Member

    Hi All,

    I have been trying to solve a puzzle for last 15 odd days. I am using WindRiver Linux.

    I have ppp connection to send data over GPRS.

    My client code has been tested on Ethernet. I mean I can send data using HTTP POST request using the client code. I can get response of HTTP GET request as well.

    The same code works well for the HTTP GET request over the GPRS when the connection is established using PPP.

    The only problem I face is that HTTP POST request doesn't go through. The server even doesn't get the request.(I am using the same PPP connection which used during the HTTP GET request).

    I have checked the HTTP POST request syntax. I believe that it is fine since, I can send the same request over the Ethernet and I get the response from the server.

    In short

    1) HTTP POST AND HTTP GET request over ETHERNET works 100% fine.
    2) HTTP GET request over GPRS works fine.
    3) HTTP POST request over GPRS doesn't work.(Even request doesn't reach to the server).

    I tried most of the debugging. The only difference in HTTP GET and HTTP POST request is the size of the data.

    I know that my cmux protocol (gsm0710) doesn't allow to transmit more than 255 bytes at one shot.

    But the GET request is also greater than 255 bytes (Including TCP/IP header overhead)

    Please recommend anything to fix this?
  2. topdog

    topdog Active Member HowtoForge Supporter

    your provider could have a firewall with deep packet inspection that is configured to block POST requests.
  3. hiharsh

    hiharsh New Member

    HTTP POST request fails over GPRS


    I missed to mention that I am able to send HTTP POST using CURL library.

    If the ISP has Deep Packet Inspection enable, I shouldn't be able to send data to the HTTP server using CURL library.

    I want to send the data over the Socket connection without using the CURL library. As such CURL library sends Header information with all the POST request.

Share This Page