function fetchBlobstoreUrl() {
  fetch('/blobstore-upload-url')
      .then((response) => response.text())
      .then((imageUploadUrl) => {
        const messageForm = document.getElementById('new-comment-form');
        messageForm.action = imageUploadUrl;
      })
      .catch(err => {
        console.log('Error in fetchBlobstoreUrl: ' + err);
        document.getElementById('comments-thread-container').
        // TODO(Issue #19): Create error page/notice
        appendChild(createListElement('Error: Unable to fetch ' +
                              'image upload url from Blobstore.', null));
      });
}
/**
 * Fetches the URL that points to Blobstore and assigns the value of the
 * commment submission form's action element to this URL. 
 * 
 * The Blobstore URL is generated and posted to the page /blobstore-upload-url
 * in plain HTML. On page load, this URL is fetched so that the form data is 
 * initially sent to Blobstore in order to process any files included in the 
 * request. This POST request is then forwarded to the NewComment servlet 
 * to enter form data into the Cload Datastore.
 */
Fetches the URL that points to Blobstore and assigns the value of the
commment submission form's action element to this URL.

The Blobstore URL is generated and posted to the page /blobstore-upload-url
in plain HTML. On page load, this URL is fetched so that the form data is
initially sent to Blobstore in order to process any files included in the
request. This POST request is then forwarded to the NewComment servlet
to enter form data into the Cload Datastore.
Fetches the URL that points to Blobstore and assigns the value of the commment submission form ' s action element to this URL . The Blobstore URL is generated and posted to the page / blobstore - upload - url in plain HTML . On page load this URL is fetched so that the form data is initially sent to Blobstore in order to process any files included in the request . This POST request is then forwarded to the NewComment servlet to enter form data into the Cload Datastore .
function fetchBlobstoreUrl() {
  fetch('/blobstore-upload-url')
      .then((response) => response.text())
      .then((imageUploadUrl) => {
        const messageForm = document.getElementById('new-comment-form');
        messageForm.action = imageUploadUrl;
      })
      .catch(err => {
        console.log('Error in fetchBlobstoreUrl: ' + err);
        document.getElementById('comments-thread-container').
        appendChild(createListElement('Error: Unable to fetch ' +
                              'image upload url from Blobstore.', null));
      });
}
function fetchBlobstoreUrl ( ) { fetch ( '/blobstore-upload-url' ) . then ( ( response ) => response . text ( ) ) . then ( ( imageUploadUrl ) => { const messageForm = document . getElementById ( 'new-comment-form' ) ; messageForm . action = imageUploadUrl ; } ) . catch ( err => { console . log ( 'Error in fetchBlobstoreUrl: ' + err ) ; document . getElementById ( 'comments-thread-container' ) . appendChild ( createListElement ( 'Error: Unable to fetch ' + 'image upload url from Blobstore.' , null ) ) ; } ) ; }
Fetches the URL that points to Blobstore and assigns the value of the
 commment submission form's action element to this URL.
Fetches the URL that points to Blobstore and assigns the value of the commment submission form ' s action element to this URL .
// TODO(Issue #19): Create error page/notice