ajaxshopifyngrok

How do I return data from my backend script and avoid this Ngrok error page?


I am trying to access a javascript file which is part of my Shopify app and log the data returned from my backend php script but I get an Ngrok error page. I have added the proxy url to the app proxy settings on Shopify and I am accessing it like this:

              $.ajax({
                     type: 'GET',
                     async: true,
                     datatype: JSON, 
                     url: '/tools/app-script',  

                    
                    data: {
                       // search: search,
                        shop: window.location.href,
                        url: window.location.href
                    },
                     beforeSend: function() {
                        // function while sending...
                     },
                     success: function(result) {
                        console.log('SUCCESS');
                       // const data = JSON.parse(result);
                        console.log(result);
                     },
                     error: function(error) {
                        // Create function for errors in the page request.
                        console.log('ERROR');
                        console.log(error);
                     }
                  });

In the console I see result is being logged as the request is successful however, I'm not getting the data I expect. Instead I receive the Ngrok message below:

  <!DOCTYPE html>
  <html lang="en-US">
    <head>
      <meta charset="utf-8">
      <meta name="author" content="ngrok">
      <meta name="description" content="ngrok is the fastest way to put anything on the internet with a single command.">
      <meta name="robots" content="noindex, nofollow">
      <meta name="viewport" content="width=device-width, initial-scale=1">
      <link id="style" rel="stylesheet" href="https://cdn.ngrok.com/static/css/error.css">
      <noscript>You are about to visit a123-12-12-123-12.eu.ngrok.io, served by xxx.xxx.xxx.xxx. This website is served for free through ngrok.com. You should only visit this website if you trust whoever sent the link to you. (ERR_NGROK_6024)</noscript>
      <script id="script" src="https://cdn.ngrok.com/static/js/error.js" type="text/javascript"></script>
    </head>
    <body id="ngrok">
      <div id="root" data-payload=""></div>
    </body>
  </html>

Solution

  • Add the skip-browser-warning-header

    $.ajax({
       type: 'GET',
       async: true,
       datatype: JSON,
       headers: { 
          'ngrok-skip-browser-warning': 'true' 
       }
       url: '/tools/app-script',