canvas_grab icon indicating copy to clipboard operation
canvas_grab copied to clipboard

Handle redirects correctly

Open squnit opened this issue 3 years ago • 3 comments

When an instructor uploads a .html file, an HTML file redirecting to https://${canvas_domain}/api/v1/courses/${course_id}/module_item_redirect/${file_id} will be put under modules in place of the actual file. This results in the actual content not being downloaded, but you end up with the file (${var} are redacted variables)

<html>
<head>
    <title>${file_title}</title>
    <meta charset="UTF-8" />
    <meta http-equiv="refresh" content="0; URL=https://${canvas_domain}/api/v1/courses/${course_id}/module_item_redirect/${file_id}" />
</head>
<body>
    <p>Redirecting you to <a href="https://${canvas_domain}/api/v1/courses/${course_id}/module_item_redirect/${file_id}">${file_name}</a></p>
</body>
</html>

squnit avatar Apr 08 '21 07:04 squnit

Seems to be a very rare case, and I don't have an environment which could reproduce this... If you are interested in this, you may help fix.

skyzh avatar Apr 08 '21 07:04 skyzh

I have this issue as well. For general pages with text, rather than download the content of the page, the downloaded html is close to what @squnit has pasted. Essentially some pages are not downloaded, just redirect files.

<html>
<head>
    <title>Assignment 1</title>
    <meta charset="UTF-8" />
    <meta http-equiv="refresh" content="0; URL=https://{canvas.example.com}/courses/{course}/modules/items/{assignment}" />
</head>
<body>
    <p>Redirecting you to <a href="https://{canvas.example.com}/courses/{course}/modules/items/{assignment}">Assignment 1</a></p>
</body>
</html>

s-crypt avatar Dec 08 '21 04:12 s-crypt

I'm getting this too. I wonder if it has to do with courses that are private vs public? I only have private courses so I have nothing to compare to. I was about to create a project similar to this for myself but since I've found this I might be able to look into this.

Bear with me as it might take a while for time to free up.

NoahCardoza avatar Mar 31 '22 22:03 NoahCardoza