Есть ссылка вида:
<a href=link&p=любой_текст>
Я из неё выцепляю текст и отправляю в качестве аргумента методу VK API:
VK.api('method', {name:decodeURIComponent($(this)[0].href.match(/p=(.+)/)[1])}, function(r){
console.log(r);
});
так вот, если я передаю таким образом одно слово, например "любой", то всё срабатывает отлично - метод выполняется:
Для любых составных текстов, типа "любой_текст" прилетает ошибка. В консоли можно наблюдать, что текст оказался не в UTF-8, а почему-то в cp-1251:
Пробовал:- менять кодировку всех своих файлов (убедился, что все они UTF-8 без BOM);
- ставить "charset=utf-8" в script, meta и .htaccess;
- не использовать decodeURIComponent, тогда текст приходит в url-формате;
- использовать decodeURI, String() и обрабатывать текст на разных этапах.
Результат по-прежнему неудовлетворительный. Пишу на JS SDK, файлы с контентом подключаю через ajax (один раз, потом только внутри подключенного файла работаю).
Где собака зарыта?