Почему Net :: Twitter жалуется на «HTTP :: Содержание сообщения, а не байты»? - PullRequest
4 голосов
/ 22 апреля 2010

Мы уже почти год используем Perl Net: Twitter CPAN-модуль (версия 3.12) и базовую аутентификацию (не OAuth) для передачи обновлений с нашего сайта в наш аккаунт Twitter. Мы только что мигрировали на новый сервер на прошлой неделе, и после того, как наши обновления в Twitter прекратились, и каждый раз, когда мы пытаемся опубликовать обновление, появляется следующая ошибка:

HTTP::Message content not bytes at /usr/lib/perl5/site_perl/5.8.8/HTTP/Request/Common.pm line 90

Вот код, который мы используем для обновления нашей учетной записи Twitter:

use Net::Twitter;
my $twitter = Net::Twitter->new(
    traits   => [qw/API::REST/],
    username => $username,
    password => $password,
    source => 'twitterfeed'
);  

my $result = $twitter->update($status);

Я понятия не имею, в чем проблема, и надеялся, что кто-то еще столкнулся с этой проблемой и сможет обеспечить быстрое решение. Заранее спасибо за помощь!

1 Ответ

1 голос
/ 22 апреля 2010

Большинство жалоб на эту ошибку, кажется, решается путем обновления libwww-perl и SOAP :: Lite . Когда Perl переключился на представление внутренних строк как UTF-8, потребовалось некоторое время, чтобы модули наверстали упущенное. Было так легко предположить, что все строки были октетами, поэтому большинство модулей не заботились о кодировках и тому подобном. Большинство основных модулей уже исправлено.

Попробуйте поискать «HTTP :: Содержание сообщения, а не байты», чтобы увидеть, как другие люди решили это. В общем, поиск сообщения об ошибке часто приводит к множеству полезных обсуждений. :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...