JSON::ParserError in Lti::LaunchesController#show

767: unexpected token at '<!DOCTYPE html> <!--[if lte IE 9]><html class="ie ie9 lte9" lang="en"><![endif]--> <!--[if !IE]><!--><html lang="en"><!--<![endif]--> <head dir="ltr"> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title> Page Not Found | ibl </title> <script type="text/javascript"> /* immediately break out of an iframe if coming from the marketing website */ (function(window) { if (window.location !== window.top.location) { window.top.location = window.location; } })(this); </script> <script type="text/javascript" src="/static/js/i18n/en/djangojs.705ead69114e.js"></script> <script type="text/javascript" src="/static/js/ie11_find_array.bd1c6dc7a133.js"></script> <link rel="icon" type="image/x-icon" href="/static/images/favicon.03ffbbf95a0d.ico"/> <link href="/static/iblx-cms/css/lms-style-vendor.68e48093f5dd.css" rel="stylesheet" type="text/css" /> <link href="/static/iblx-cms/css/lms-main-v1.42c3320c94e0.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="/static/js/lms-main_vendor.3c3c9a2604d6.js" charset="utf-8"></script> <script type="text/javascript" src="/static/js/lms-application.98d9a8549a03.js" charset="utf-8"></script> <script type="text/javascript" src="/static/bundles/commons.03a86eae582415fc4d08.2dda9d3d760c.js" ></script> <script> window.baseUrl = "/static/"; (function (require) { require.config({ baseUrl: window.baseUrl }); }).call(this, require || RequireJS.require); </script> <script type="text/javascript" src="/static/lms/js/require-config.38226099c6ad.js"></script> <script type="text/javascript"> (function (require) { require.config({ paths: { 'course_bookmarks/js/views/bookmark_button': 'course_bookmarks/js/views/bookmark_button.d4cfaf3361fa', 'js/views/message_banner': 'js/views/message_banner.141974fd4f5d', 'moment': 'common/js/vendor/moment-with-locales.e3cc27d412a1', 'moment-timezone': 'common/js/vendor/moment-timezone-with-data.60142e6c4416', 'js/courseware/course_info_events': 'js/courseware/course_info_events.2fc35b57627f', 'js/courseware/accordion_events': 'js/courseware/accordion_events.6064c7809de5', 'js/dateutil_factory': 'js/dateutil_factory.a28baef97506', 'js/courseware/link_clicked_events': 'js/courseware/link_clicked_events', 'js/courseware/toggle_element_visibility': 'js/courseware/toggle_element_visibility.474ff5ba9de3', 'js/student_account/logistration_factory': 'js/student_account/logistration_factory.8e1e0a0f9e76', 'js/courseware/courseware_factory': 'js/courseware/courseware_factory.1504fc10caef', 'js/groups/views/cohorts_dashboard_factory': 'js/groups/views/cohorts_dashboard_factory.35bf944b34d2', 'js/groups/discussions_management/discussions_dashboard_factory': 'js/discussions_management/views/discussions_dashboard_factory.2e10d9097343', 'draggabilly': 'js/vendor/draggabilly.26caba6f7187', 'hls': 'common/js/vendor/hls.5e0c7e1b3bfd' } }); }).call(this, require || RequireJS.require); </script> <script type="application/json" id="user-metadata"> null </script> <!-- dummy Segment --> <script type="text/javascript"> var analytics = { track: function() { return; }, trackLink: function() { return; }, pageview: function() { return; }, page: function() { return; } }; </script> <!-- end dummy Segment --> <meta name="path_prefix" content=""> <meta name="openedx-release-line" content="olive" /> </head> <body class="ltr lang_en"> <div id="page-prompt"></div> <div class="window-wrap" dir="ltr"> <a class="nav-skip sr-only sr-only-focusable" href="#main">Skip to main content</a> <header class="global-header "> <div class="main-header"> <h1 class="header-logo"> <a href="/dashboard"> <img class="logo" src="/static/images/logo.b6c374d66d57.png" alt="ibl Home Page"/> </a> </h1> <div class="hamburger-menu" role="button" aria-label=Options Menu aria-expanded="false" aria-controls="mobile-menu" tabindex="0"> <span class="line"></span> <span class="line"></span> <span class="line"></span> <span class="line"></span> </div> <nav class="nav-links" aria-label=Supplemental Links> <div class="main"> <div class="mobile-nav-item hidden-mobile nav-item"> <a href="/courses">Explore courses</a> </div> </div> <div class="secondary"> <div> <div class="mobile-nav-item hidden-mobile nav-item"> <a class="register-btn btn" href="https://apps.learn.geoff.ibl.network/authn/register?next=%2Fapi%2Flti_consumer%2Fv1%2Ftoken%2Fblock-v1%3Aibl%2B101%2B2024-01%2Btype%40lti_consumer%2Bblock%4004a59b17d9414600bbcde27c73c0edd6">Register</a> </div> <div class="mobile-nav-item hidden-mobile nav-item"> <a class="sign-in-btn btn" href="https://apps.learn.geoff.ibl.network/authn/login?next=%2Fapi%2Flti_consumer%2Fv1%2Ftoken%2Fblock-v1%3Aibl%2B101%2B2024-01%2Btype%40lti_consumer%2Bblock%4004a59b17d9414600bbcde27c73c0edd6">Sign in</a> </div> </div> </div> </nav> </div> <div class="mobile-menu hidden" aria-label=More Options role="menu" id="mobile-menu"></div> </header> <div class="marketing-hero"></div> <div class="content-wrapper main-container" id="content" dir="ltr"> <main id="main" aria-label="Content" tabindex="-1"> <section class="outside-app"> <h1> Page not found </h1> <p> The page that you were looking for was not found. Go back to the <a href="/">homepage</a> . </p> </section> </main> </div> <div class="wrapper wrapper-footer"> <footer id="footer-openedx" class="grid-container" > <div class="colophon"> <nav class="nav-colophon" aria-label="About"> <ol> <li class="nav-colophon-01"> <a id="about" href="/about">About</a> </li> <li class="nav-colophon-02"> <a id="blog" href="/blog">Blog</a> </li> <li class="nav-colophon-03"> <a id="contact" href="/support/contact_us">Contact</a> </li> <li class="nav-colophon-04"> <a id="donate" href="/donate">Donate</a> </li> </ol> </nav> <div class="wrapper-logo"> <p> <a href="/"> <img alt="organization logo" src="http://learn.geoff.ibl.network/static/images/logo.b6c374d66d57.png"> </a> </p> </div> <p class="copyright">© ibl. All rights reserved except where noted. edX, Open edX and their respective logos are registered trademarks of edX Inc. </p> <nav class="nav-legal" aria-label="Legal"> <ul> <li class="nav-legal-01"> <a href="/tos_and_honor">Terms of Service &amp; Honor Code</a> </li> <li class="nav-legal-02"> <a href="/privacy">Privacy Policy</a> </li> <li><a href="https://www.edx.org/?utm_medium=affiliate_partner&amp;utm_source=opensource-partner&amp;utm_content=open-edx-partner-footer-link&amp;utm_campaign=open-edx-footer">Take free online courses at edX.org</a></li> </ul> </nav> </div> <div class="footer-about-openedx"> <p> <a href="https://open.edx.org"> <img src="https://logos.openedx.org/open-edx-logo-tag.png" alt="Powered by Open edX" width="175" /> </a> </p> </div> </footer> </div> </div> <script type="text/javascript" src="/static/js/vendor/noreferrer.aa62a3e70ffa.js" charset="utf-8"></script> <script type="text/javascript" src="/static/js/utils/navigation.08930e16ab3d.js" charset="utf-8"></script> <script type="text/javascript" src="/static/js/header/header.309a1243e175.js"></script> <script type="text/javascript" src="/static/js/src/jquery_extend_patch.54dddef28d15.js"></script> <div id="lean_overlay"></div> </body> </html> '

Extracted source (around line #26):
24
25
26
27
28
29
              
request = conn.post @tool.oauth2_url, body
JSON.parse(request.body)
end
def body

Rails.root: /app

Application Trace | Framework Trace | Full Trace

Request

Parameters:

{"tool_id"=>"2838", "id"=>"20725"}

Response

Headers:

None