I am making an API call to Facebook, using the Facebook C# SDK, and I can't seem to send long query strings via HTTP GET. I need a long FQL query (select .. from .. where .. in ) to execute and I can't seem to send it. If the query is smaller, it does send successfully and return the results. Unfortunatelly, as FQL supports GET and not POST, I am stuck to GET.
How can I increase the default query string limit in Windows Phone HttpWebRequest?
I am using Windows Phone SDK 7.1, but testing on Windows Phone 8 device.
It seems you need to switch to http post (if possible) or optimize your request somehow.
Read What is the maximum length of a URL in different browsers?. While the official standard for HTTP says that there should be no maximum, in reality there are maximums. For example, IE have an upper bound of 2083 characters. Windows Phone seems to have similar limit to IE.
Microsoft Internet Explorer has a maximum uniform resource locator
(URL) length of 2,083 characters. Internet Explorer also has a maximum
path length of 2,048 characters. This limit applies to both POST
request and GET request URLs.
If you are using the GET method, you are limited to a maximum of 2,048
characters, minus the number of characters in the actual path.
However, the POST method is not limited by the size of the URL for
submitting name/value pairs. These pairs are transferred in the header
and not in the URL.
RFC 2616, "Hypertext Transfer Protocol -- HTTP/1.1," does not specify
any requirement for URL length.
Source: http://social.msdn.microsoft.com/Forums/en-US/wpdevelop/thread/f96622fe-4dcb-4d38-8831-4cfad1aa4a06/