0

urlfetch を使用して、Web ページからスプレッドシートに情報を取得できるようにしたいと考えています。情報を取得する必要があるサイトには、ログイン情報が必要です。ブラウザーの 1 つのタブでそのサイトにログインすると、そのサイトで開いた後続のタブはすべて既にログオンしていますが、urlfetch でそのサイトにアクセスしようとすると、次のようなエラーが表示されます。

「Cookie の設定中にエラーが発生しました。オブジェクト参照がオブジェクトのインスタンスに設定されていません。」

ヘッダーに適切な Cookie を設定しようとするために使用しているコードは次のとおりです。

function webURL() {

  var response = UrlFetchApp.fetch("https://website.com");

  var cookie = response.getAllHeaders()['Set-Cookie']; 
  var header = {'Cookie':cookie};
  var opt3 = {"Headers":header};
  var pageData = UrlFetchApp.fetch(pageURL, opt3);


Browser.msgBox(pageData.getContentText());

}
4

1 に答える 1

2

Google Apps Script コードは、コンピュータやブラウザではなく、Google のサーバーで実行されることに注意してください。そのため、UrlFetch リクエストは Google のサーバーから行われます。

Web サイトが使用する認証の種類 (HTTP Basic/oauth など) がわかっている場合は、スクリプトで認証を実行できる場合があります。

于 2012-08-28T18:08:54.887 に答える