'Making POST request in Tampermonkey to Google Apps Script

I am using Tampermonkey to monitor a webpage for certain changes, which I am trying to record in a Google Sheet. To do this, I have a Google Apps Script, and I want to make POST requests to the Apps Script.

A snippet of my code in Tampermonkey is shown below:

  var xhr = new XMLHttpRequest();
  xhr.open("POST", "https://script.google.com/macros/s/~~scriptId~~/exec", true);
  xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  xhr.send(data);

However, I am getting an error that says Access to XMLHttpRequest has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource, and a net::ERR_FAILED 404 as well.

I know that data is correct, since it has been logged to the console. I have also deployed the Apps Script as a Web app, and setting it to execute as Me and for Anyone to have access.

I do not have much experience with JavaScript, so any help would be appreciated. Is there anything I can do to fix this?

Edit: I resolved it by changing the code to

  var xhr = new XMLHttpRequest();
  xhr.open("GET", "https://script.google.com/macros/s/~~scriptId~~/exec?"+data, true);
  xhr.send();


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source