cmi.core.lesson_location не возвращает ту же строку, что и в ней?
В настоящее время я разрабатываю оболочку для существующей LMS, чтобы сделать это жалобой SCORM. Для этой цели я использую cmi.core.lesson_location для хранения данных, связанных с курсом. Я знаю, что cmi.core.lesson_location хранит только 255 символов. Но когда я сопоставляю строку, содержащую более 200 символов, она возвращает мне усеченную строку.
Я не могу определить какой-либо шаблон каких-либо подобных проблем? Иногда он возвращает усеченную строку, заканчивающуюся%3 или что-то в этом роде. Есть ли какие-либо проблемы с кодированием при использовании cmi.core.lesson_location? Если так, то кто-нибудь может опубликовать их
Спасибо
Swaroop
3 ответа
Если ваша строка содержит не алфавитно-цифровые символы и в какой-то момент она кодируется URLE, каждый не буквенно-цифровой символ фактически становится 3 символами, а ваша строка усекается.
Вы можете использовать cmi.suspend_data вместо cmi.core.lession_location. Cmi.suspend_data может хранить больше данных.
Cmi.suspend_data должен хранить 4096 байт. LMS может хранить больше... или меньше байтов. Вы должны проверить это.