django-lti-provider
django-lti-provider copied to clipboard
Handle "Score is not between 0 and 1" canvas error, in PostGrade view
The response can look like this:
'<?xml version="1.0" encoding="UTF-8"?>\n<imsx_POXEnvelopeResponse xmlns="http://www.imsglobal.org/services/ltiv1p1/xsd/imsoms_v1p0">\n <imsx_POXHeader>\n <imsx_POXResponseHeaderInfo>\n <imsx_version>V1.0</imsx_version>\n <imsx_messageIdentifier/>\n <imsx_statusInfo>\n <imsx_codeMajor>failure</imsx_codeMajor>\n <imsx_severity>status</imsx_severity>\n <imsx_description>Score is not between 0 and 1\n[EID_13960006980949683]</imsx_description>\n <imsx_messageRefIdentifier>1512060794</imsx_messageRefIdentifier>\n <imsx_operationRefIdentifier>replaceResult</imsx_operationRefIdentifier>\n </imsx_statusInfo>\n </imsx_POXResponseHeaderInfo>\n </imsx_POXHeader>\n <imsx_POXBody><replaceResultResponse/></imsx_POXBody>\n </imsx_POXEnvelopeResponse>\n'
and our library just returns "Post grade failed". Give more detail here
This might actually need to be addressed in PyLTI, not django-lti-provider.
I've seen other auth-related errors too that I'm only seeing because i have pylti debugging on.