Hello Simon,
> I have been using HTTP Analyzer to monitor exactly what data is sent to
> the HTTP server from a) iexplorer, and b) my program. Both programs
> matched on all header fields, but they were both posting different data
> to the server. Below I have shown the data that is being posted by both
> applications:
>
> Iexplorer:
>
> _XFORMSESSSTATE=ABR7MDp7VToiL2hhL2RlZmF1bHQuYXNweCIsMDp7MjoibWJtMCIsM6IBLTB4Ag0iUyIsMToiZW4iLDY6MCw3nAQFd2Fyd2ljazFtBTBsBwI4OjAsOXgDkAB2ATM6YAMDMCw3NTowxAcDMCw0OjAsfAEONzA6Miw3MzoxLDcyOjIsNDFsBAc4OjIsNjk6MSw2egQ2NXkBNngBjA4LMSwwOjI1LDE6MX0sNjB8BZAGeQw1cQ41cg41N2AMfRQ1eQw1YQk1iQQyYANlBjVtBzRxBTR5BjRxBTR5BjRxBTR5BjRxBTR5BjRxBTN9BDNlBjNhCDOMAmwXAzMyOjEsM2UGM20HM3UIM30JMnEFMnkGMnEFMnkGMnEKMnEKMmUGMn0EOXkBOWEDOWkEOXEFN2oJNzdoI3AfAjcxOjEscgMxOGABZQQxfQwxfQcxZQk4fQc4ZQk4dQM4YQY4dQM4fQQ4eQk4nARwEgg4OTowfSwxOnsxMGoEMTBmAzEwkARcC3UvN58WOjAsaQowfBBsBHQFcBJkBX0BN2wN5DgBMSwxMWUFNG0PNmAVKx8HMSw2eQc2fBEp6AZ1JzZxDDlsBzUQBwUxLDU0OjEsNX0tNWUGNXAhkjgxMHkVOHACKz4HMSz%2bOTEs/zkxLDRkCC0%2bBzEweg8xMGYoMTBiCzEwfhoxMGgVK7QHWCF0BD%2b3BzEsMnAg9z0xLDJ4F%2bs%2bMSwyZQs5bBaJPjdxMjmMAmokOTV8LW0sN20CN20CN30SOXwEYQExdTMxlAFhGjFlCTFlDjGAF3QG60MxLDFtDzh9BDhoLOpDMSzrQzEsOGUOOGk2OHUpOW0POY4MMDhobQg0OjEsNTowfX19fREAADwEAAA%3d&sri=True&elks=True&hls=T|article
> N|fmt O|c T|report N|fmt O|c O|, T|file N|fmt O|c O|, T|the O|%2b T|j
> N|rst O|c T|nnam N|ns O|c T|nrmf N|ns O|c O|, T|nrgn N|ns O|c O|, O|-
> O|%2b T|en N|la O|c O|%2b N|pd D|-0008 D| O|d
> O|%2b&dfd=FULL&istphst=True&arc=2&ari=1&hdl=[%7B2%3A%7B2%3A%22distdoc%3Aarchive/ArchiveDoc%3A%3AArticle/J000000020060902e2920002a%22%2C0%3A%5B%7B3%3A14406%2C0%3A%22NewsArticle%22%2C4%3A1%2C5%3A%22distdoc%3Aarchive/ArchiveDoc%3A%3AArticle/J000000020060902e2920002a%22%7D%5D%2C1%3A%22Article%22%7D%2C3%3A1%2C0%3A%22J000000020060902e2920002a%22%2C1%3A%22%20Emergency%20Room%3A%20How%20Bristol-Myers%20Fumbled%20Defense%20Of%20%244%20Billion%20Drug%20---%20CEO%20Dolan%27s%20Plan%20to%20Delay%20Generic%20Went%20Haywire%3B%20Board%20to%20Discuss%20His%20Fate%20---%20Doing%20a%20Deal%20With%20the%20%27Devil%27%20%20%22%2C4%3A%22j%22%2C5%3A0%7D]&
>
>
> My program:
>
> _XFORMSESSSTATE=ABR7MDp7VToiL2hhL2RlZmF1bHQuYXNweCIsMDp7MjoibWJtMCIsM6IBLTB4Ag0iUyIsMToiZW4iLDY6MCw3nAQFd2Fyd2ljazFtBTBsBwI4OjAsOXgDkAB2ATM6YAMDMCw3NTowxAcDMCw0OjAsfAEONzA6Miw3MzoxLDcyOjIsNDFsBAc4OjIsNjk6MSw2egQ2NXkBNngBjA4LMSwwOjI1LDE6MX0sNjB8BZAGeQw1cQ41cg41N2AMfRQ1eQw1YQk1iQQyYANlBjVtBzRxBTR5BjRxBTR5BjRxBTR5BjRxBTR5BjRxBTN9BDNlBjNhCDOMAmwXAzMyOjEsM2UGM20HM3UIM30JMnEFMnkGMnEFMnkGMnEKMnEKMmUGMn0EOXkBOWEDOWkEOXEFN2oJNzdoI3AfAjcxOjEscgMxOGABZQQxfQwxfQcxZQk4fQc4ZQk4dQM4YQY4dQM4fQQ4eQk4nARwEgg4OTowfSwxOnsxMGoEMTBmAzEwkARcC3UvN58WOjAsaQowfBBsBHQFcBJkBX0BN2wN5DgBMSwxMWUFNG0PNmAVKx8HMSw2eQc2fBEp6AZ1JzZxDDlsBzUQBwUxLDU0OjEsNX0tNWUGNXAhkjgxMHkVOHACKz4HMSz%2BOTEs%2FzkxLDRkCC0%2BBzEweg8xMGYoMTBiCzEwfhoxMGgVK7QHWCF0BD%2B3BzEsMnAg9z0xLDJ4F%2Bs%2BMSwyZQs5bBaJPjdxMjmMAmokOTV8LW0sN20CN20CN30SOXwEYQExdTMxlAFhGjFlCTFlDjGAF3QG60MxLDFtDzh9BDhoLOpDMSzrQzEsOGUOOGk2OHUpOW0POY4MMDhobQg0OjEsNTowfX19fREAADwEAAA%3D&sri=True&elks=True&hls=T%7Carticle+N%7Cfmt+O%7Cc+T%7Creport+N%7Cfmt+O%7Cc+O%7C%2C+T%7
Cfile+N%7Cfmt+O%7Cc+O%7C%2C+T%7Cthe+O%7C%252b+T%7Cj+N%7Crst+O%7Cc+T%7Cnnam+N%7Cns+O%7Cc+T%7Cnrmf+N%7Cns+O%7Cc+O%7C%2C+T%7Cnrgn+N%7Cns+O%7Cc+O%7C%2C+O%7C-+O%7C%2B+T%7Cen+N%7Cla+O%7Cc+O%7C%2B+N%7Cpd+D%7C-0008+D%7C+O%7Cd+O%7C%2B&dfd=FULL&istphst=True&arc=2&ari=1&hdl=%5B%7B2%3A%7B2%3A%22%3Bdistdoc%3Aarchive%2FArchiveDoc%3A%3AArticle%2FJ000000020060902e2920002a%22%3B%2C0%3A%5B%7B3%3A14406%2C0%3A%22%3BNewsArticle%22%3B%2C4%3A1%2C5%3A%22%3Bdistdoc%3Aarchive%2FArchiveDoc%3A%3AArticle%2FJ000000020060902e2920002a%22%3B%7D%5D%2C1%3A%22%3BArticle%22%3B%7D%2C3%3A1%2C0%3A%22%3BJ000000020060902e2920002a%22%3B%2C1%3A%22%3B+Emergency+Room%3A+How+Bristol-Myers+Fumbled+Defense+Of+%244+Billion+Drug+---+CEO+Dolan%27s+Plan+to+Delay+Generic+Went+Haywire%3B+Board+to+Discuss+His+Fate+---+Doing+a+Deal+With+the+%27Devil%27++%22%3B%2C4%3A%22%3Bj%22%3B%2C5%3A0%7D%5D
Looks like the "hls" parameter is the problem.
> Shown below is the NameValuePair[] creation code which corresponds to
> this POST method:
>
> NameValuePair[] data = {
>
> new NameValuePair("_XFORMSESSSTATE", getXFORMSESSSTATE(response)),
>
> new NameValuePair("sri", "True"),
>
> new NameValuePair("elks", "True"),
>
> new NameValuePair("hls", "T|article N|fmt O|c T|report N|fmt O|c O|,
> T|file N|fmt O|c O|, T|the O|%2b T|j N|rst O|c T|nnam N|ns O|c T|nrmf
> N|ns O|c O|, T|nrgn N|ns O|c O|, O|- O|+ T|en N|la O|c O|+ N|pd D|-0008
> D| O|d O|+"),
The %2b in there could have to do with it. In the extract above, the
IE version has all + characters replaced with %2b. You have most of
them as + character, except for one. Try to fix that first by putting
a + character instead of the %2b in this value.
> new NameValuePair("dfd", "FULL"),
>
> new NameValuePair("istphst", "True"),
>
> new NameValuePair("arc", "2"),
>
> new NameValuePair("ari", "1"),
>
> new NameValuePair("hdl", gethdl(response))
>
> };
>
> I don’t know if this is relevant or not, but every POST request until
> this point had the header: “Content-Type:
> application/x-www-form-urlencoded”, but this POST request has the
> header: “Content-Type: application/x-www-form-urlencoded; charset=UTF-8”.
In the case of IE, that Content-Type header is a plain lie. URL encoded
means that only a specified set of characters are allowed, and the
space character is not among them.
If my first suggestion above does not fix the problem, I'm afraid
you will have to try and replicate the invalid pseudo URL encoding
that you see in the IE request. HttpClient is designed to comply with
specifications, so there is no built-in way (I am aware of) to do it.
Version 1 is to do the encoding in your code and feed a plain
string or byte array to the POST request. Version 2 is to implement
a new RequestEntity and have that perform the invalid encoding.
hope that helps,
Roland
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]