Как текст UTF-8 перекодировать в ASCII-8BIT?



  • Как текст UTF-8 перекодировать в ASCII-8BIT, для последующей кодировки в urlencode и отправки через POST комментария? Отправил коммент "Раскодировать текст автоматически (рекомендуется)" через браузер BAS (включив захват HTTP-запросов). Получил рабочий POST-запрос. Коммент защифровался в urlencode таким образом:

    comment=%26%231056%3B%26%231072%3B%26%231089%3B%26%231082%3B%26%231086%3B%26%231076%3B%26%231080%3B%26%231088%3B%26%231086%3B%26%231074%3B%26%231072%3B%26%231090%3B%26%231100%3B+%26%231090%3B%26%231077%3B%26%231082%3B%26%231089%3B%26%231090%3B+%26%231072%3B%26%231074%3B%26%231090%3B%26%231086%3B%26%231084%3B%26%231072%3B%26%231090%3B%26%231080%3B%26%231095%3B%26%231077%3B%26%231089%3B%26%231082%3B%26%231080%3B+%28%26%231088%3B%26%231077%3B%26%231082%3B%26%231086%3B%26%231084%3B%26%231077%3B%26%231085%3B%26%231076%3B%26%231091%3B%26%231077%3B%26%231090%3B%26%231089%3B%26%231103%3B%29
    

    Если это расшифровать, то выходит что изначальный текст был не в UTF-8, а в ASCII-8BIT
    alt text

    Сейчас я беру текст для коммента из ресурсов(Генератор строк), там текст всегда в кодировке UTF-8. Перед отправкой текст я шифрую его в urlencode, но коммент публикуется на сайте кракозябрами. Как решить проблему?



  • Если

    alt text
    то коммент в POST запросе выходит таким:

    comment=%D0%A0%D0%B0%D1%81%D0%BA%D0%BE%D0%B4%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D1%82%D1%8C%20%D1%82%D0%B5%D0%BA%D1%81%D1%82%20%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%20(%D1%80%D0%B5%D0%BA%D0%BE%D0%BC%D0%B5%D0%BD%D0%B4%D1%83%D0%B5%D1%82%D1%81%D1%8F)
    

    и публикуется коммент в таком виде:

    alt text



  • Каким образом можно отправить коммент, чтобы он опубликовался в верной кодировке , не потеряв символы юникода?



  • @revers Вам сервер когда вы запрашиваете присылает какую кодировку в заголовках? И может windows-1251 попробовать? а вот потом энкодить


Log in to reply