У меня проблема с тем же фрагментом кода, который отлично работает на моем живом веб-сайте, но не на моем локальном сервере разработки.
У меня есть функция Ajax, которая обновляет div. На работающем сайте работает следующий код:
self.xmlHttpReq.open("POST", PageURL, true);
self.xmlHttpReq.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
self.xmlHttpReq.setRequestHeader("Content-length", QueryString.length);
//..update div stuff...
self.xmlHttpReq.send(QueryString);
Когда я пытаюсь запустить это на своем локальном компьютере, в QueryString ничего не передается.
Однако, чтобы запутать, следующий код работает локально:
self.xmlHttpReq.open("POST", PageURL+"?"+QueryString, true);
self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
//..div update stuff..
self.xmlHttpReq.send(QueryString);
Но я не могу использовать код, который работает на моем локальном компьютере, поскольку он не работает на реальном сервере (они изменили свою политику в отношении строк запросов по соображениям безопасности)!
Я могу предупредить строку запроса, чтобы я знал, что она передана в функцию на моем локальном компьютере. Единственное, о чем я могу думать, это то, что это проблема с аппаратным обеспечением / обновлением.
Live Site работает под управлением IIS 6 (я думаю, на WIN 2003)
Локальный сайт работает под управлением IIS 5.1 (в XP Pro)
Есть какие-то обновления или что-то я пропускаю или что-то?