![]() |
as 2.0 http-запрос
доброго времени суток!
помогите советом, а то чет я сам разобраться не могу. мне нужно отправить запрос из ас 2.0 с параметром. например: http://10.0.3.27:8080/Default.aspx?02-08-02/1581/10, параметр всегда будет разный. и получить обратно ответ(ответ строка, например, Документ не найден и тд). почитав тут я на форуме понял, что мне нужно использовать LoadVars(). вот собственно код: Код AS1/AS2:
%EF%BF%BD%EF%BF%BD%EF%BF%BD%20%EF%BF%BD%EF%BF%BD%EF%BF%BD%EF%BF%BD=&onLoad=%5Btype%20Function%5D подскажите как быть? :( может все и работает, да только как мне с кодировкой разобраться. по серверной части ничего сказать не могу, писал не я. |
используйте onData
Код AS1/AS2:
|
используя onData я получаю следующий ответ: ��� ����
как в ас работать с кодировкой? |
Попробуйет во флэше написать
Код AS1/AS2:
|
Гм, не надо System.useCodepage = true, это скверная практика.
Необходимо разобраться с кодировкой. Скрипт должен выдать ответ в кодировке utf-8, с которой работает флеш. Не знаю, как это делается в, судя по всему, ASP, в PHP же есть соотв. функции. В процессе отладки трейсите аргумент onData, так всё верно. Просто если вы напишите во флешке System.useCodepage = true, то на ОС, где используется другая кодовая таблица , будут проблемы, т.е. флешка не будет универсальной. |
Цитата:
mrGreen В пхп есть функция по перегону переменных в utf 8, но там ещё дополнительная библиотека требуеться. PHP код:
|
Никаких похождений.
PHP код:
Автору, возможно, будет достаточно пересохранить сам скрипт в UTF-8 в любом простом текстовом редакторе типа Блокнота. |
я только что попробовал этот запрос в php и действительно, asp выдает ответ в win1251. и при помощи iconv эту проблему можно решить. но проблема в том, что серверная часть на asp.net, а я в ней ну не в зуб ногой. я уже попросил сотрудника переписать серверную часть, чтобы выдавал ответ на utf-8. жду результат. надеюсь после этого во флеше я буду получать разумные ответы
|
и еще вопрос:
до того, как использовать sendAndLoad я проверял на Код AS1/AS2:
|
1) Приведите полный код, т.е. все, что связано с работой LoadVars.
И еще. К чему у вас в примере в начале топика decode ? Что вы пытаетесь сделать? Синтаксис для отправки данных такой: Код AS1/AS2:
2) К чему у вас в примере в начале топика decode ? Какова цель применения этого метода? |
полный код приведен в первом сообщении. Просто чтобы видеть какой запрос отправляется я решил проверить это при помощи send(). Пока писал сообщение заметил, что от браузера завист подобное искожение. :eek: хм.. и вот что я получаю:
1) Код AS1/AS2:
IE8 http://10.0.3.27:8080/Default.aspx?n...02%2F1581%2F10 Chrome http://10.0.3.27:8080/Default.aspx?nom=02-08-02/1581/10 а мне собственно нужен следующий результат: http://10.0.3.27:8080/default.aspx?02-08-04/1125/10 2) decode использовал чтобы схитрить: Код AS1/AS2:
http://10.0.3.27:8080/Default.aspx?0...2%2F1581%2F10= Chrome http://10.0.3.27:8080/Default.aspx?02-08-02/1581/10= т.е. выходит, что если даже поправят кодировку на серверной части, чего к сожалению еще почему-то не сделали, у меня все равно будет не тот запрос что мне нужно. мне не нужно чтобы выводилось наименование параметра и знак = как в первом случае или знак "равно" как во втором. мне нужно чтобы после url выводилось только значение параметра, например вот так: http://10.0.3.27:8080/Default.aspx?02-08-02/1581/10 подскажите как это можно реализовать :( |
Так и делайте так, ничто не мешает делать параллельно и GET и POST (если вам вообще POST нужен).
Код AS1/AS2:
|
блин, если я делаю как Вы говорите, то выходит вот что:
http://10.0.3.27:8080/Default.aspx02-08-02/1581/10? немножко не то что необходимо. может я чего не так делаю? вот код: Код AS1/AS2:
|
Знак вопроса потеряли м/у url-ом и переменной
Код AS1/AS2:
|
эмм.. не то чтобы потерял, он теперь в конце всего запроса и добавление его(знака вопроса) в конец url
Код AS1/AS2:
http://10.0.3.27:8080/Default.aspx?02-08-02/1581/10? |
Уфф.. sendAndLoad пробуйте. Без рефреша. Вам же send только в тестовых целях нужен был?
Офтоп. Может анимированную аватрку приструните? Тяжело топик с вашими постами читать, особенно в пятницу. :( |
Да, все верно. send только для теста, чтобы убедиться, что строка запроса соответствует необходимой. только что проверил с sendAndLoad и получаю результат, что некорректный запрос. и можно по подробней, что значит без рефреша?
черт, я в тупике. неужели это нельзя реализовать на флеше? |
Часто использовал работу с передачей скрипту переменных, сложные запросы из флеша в том числе, и сильных проблем на стороне флеша не было.
Попробуйте проверить как работает сам скрипт, может быть трабла в нем. Вбейте в адресную строку браузера запрос и посмотрите ответ. Если все ок, нужно смотреть, что отправляет флеш. Можно сниффером, мне обычно достаточно было трейсить саму строку запроса, если что-то передавал через GET в адресной строке. Как обычно, локализация проблемы = 50% успеха ее решения. Кстати, попробуйте еще простой метод load + обработчик onLoad. |
блин, ну это не сложный запрос.. :wacko:
я вбивал в адресную строку браузера данный пример и многие другие. работает отлично. чувствую я здесь точно проблема с тем, что передает флеш. Цитата:
Код AS1/AS2:
Цитата:
|
Ну просто метод LoadVars.load(), синтаксис в хелпе.
|
любой аватар, лишь бы запрос работал =)
метод load уже завтра на свежую голову почитаю, ибо у меня уже 0:43.. |
Цитата:
|
Цитата:
Разве что если свое приложение stand-alone, а чужой скрипт и правда слишком чужой, чтобы его можно было поправить. |
Ну.... вот например я вообще ничерта в рнр не шарю :)
И попросить некого довести его до ума. Таким образом - на безрыбье... :) |
Цитата:
|
Цитата:
Код AS1/AS2:
%CD%E5%E2%E5%F0%ED%FB%E9%20%F4%EE%F0%EC%E0%F2%20%ED%EE%EC%E5%F0%E0=&onLoad=%5Btype%20Function%5D то же что и в первом сообщении я в отчаяние, как быть? |
Если вам нужен парсить и формировать ответ, то, поскольку ответ от скрипта должен формироваться так:
Код:
var1=value1&var2=value2&var3=value3....Код AS1/AS2:
Код AS1/AS2:
Попробуйте воспроизвести пару-тройку примеров на LoadVars из хелпа. |
я понимаю, все верно. НО это если серверный скрипт на php, то все работает так как Вы и сказали, но серверный скрипт на ASP.NET и ответ не
Код:
var1=value1&var2=value2&var3=value3....Цитата:
[url]?[значение параметра], например http://10.0.3.27:8080/Default.aspx?02-08-02/1581/10 ,где http://10.0.3.27:8080/Default.aspx - url, 02-08-02/1581/10 - значение параметра. при работе с onData необходим следующий формат [url]?[имя параметра]=[значение параметра] я уже перебрал массу примеров, в том числе и по вашим советам, но так и не получил нужного результата.. :( Добавлено через 20 минут блииин.. простите, это я не прав. все получилось! спасибо Вам огромное! вот как я сделал: Код AS1/AS2:
|
Пожалуйста. Для "спасибо" кнопочка весов.
PS. Я, кстати, так и не понял, почему нельзя сделать такой же ответ от сервера и на ASP: Код AS1/AS2:
|
на кнопочку уже ткнул =)
нельзя было потому что я в asp ну вообще не в зуб ногой.. серверную часть делал не я. и проблематично сейчас там чего-либо изменить. Сейчас все работает. я несказанно счастлив! ) |
| Часовой пояс GMT +4, время: 01:34. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.