Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Безымянный 30.07.2005 00:19
Цель: формировать средствами парсера JS-код для библиотеки JSHttpRequest (by Dmitry Koterov).get-запрос: script.html?sid=session_id...param=pairs...?request_id post-запрос: script.html?sid=session_id?request_id [остальные данные в теле запроса]GET-запрос: request_id = $form:qtail
$qtail[^request:query.mid(^request:query.pos[?]+1)]Т.к. парсер не понимает %uXXXX, возникла необходимость написать свой метод разбора строки:
# передаем данные после замены %uXXXX -> Win1251 # см. http://www.parser.ru/forum/?id=42777 @_parse_query_string[string][parts;key;value] ^if(^string.pos[?]>=0){ $result.qtail[^string.mid(^string.pos[?]+1)] $string[^string.mid(0;^string.pos[?])] } $parts[^string.split[&]] ^parts.menu{ ^if(^parts.piece.pos[=] > 0){ $key[^parts.piece.left(^parts.piece.pos[=])] $value[^parts.piece.mid(^parts.piece.pos[=]+1)] $result.$key[$value] } }Для начала стало понятным, что в этом случае (POST-запрос & нет поддержки %uXXXX) бессмысленно получение $form:qtail.