Я нахожусь в процессе настройки поддержки OAuth на общем сервере.Библиотека OAuth на стороне сервера, которую я пытаюсь установить, является следующей:
http://code.google.com/p/oauth-php/downloads/list
И я следую указаниям по установке, найденным здесь:
http://code.google.com/p/oauth-php/wiki/ConsumerHowTo
В примечаниях был совет по использованию сценария SQL, найденного в пакете установки, для настройки таблиц и баз данных.Когда я попытался выполнить сценарий с помощью функции импорта (SQL), найденной в phpMyAdmin, я получил ошибку «Слишком длинный ключ» в одной из таблиц.Другими словами, я запустил smack в ограничение максимальной длины ключа, найденное при использовании таблиц MySQL / InnoDB.
Чтобы обойти эту проблему, я заменил все экземпляры "charset = utf8" на "charset = latin1", так как utf8требуется 3 байта на символ, а latin1 равен 1 байту на символ.Сценарий выполнялся нормально, и все таблицы были созданы правильно.
Насколько я вижу, все поля, используемые в таблицах, не требуют поддержки многобайтовых международных символов.Единственный способ увидеть возникновение проблемы - это если одна из служб, подключенных к OAuth, к которым у меня есть доступ, использует международные символы в их ключе или секрете потребителя, и я до сих пор не сталкивался с такой ситуацией.
Может кто-нибудьскажите, будет ли этот обходной путь кусать меня в заднюю часть в любое время и где это может быть?Кроме того, если у кого-то есть лучшее решение для исправления проблемы «слишком длинный ключ» без ущерба для использования набора символов utf8, я бы хотел об этом знать.