17

UrlFetchApp.fetchGoogle Apps Scriptリクエストで使用されるユーザーエージェント文字列を変更することはできますか?

2010年のこの議論は、Google Apps ScriptのUrlFetchモジュールが、Google App EngineのUrlFetchモジュールと同様User-Agentに、オプションのコレクションへのヘッダーの追加をサポートしていることを示唆しています。headersただし、GASのドキュメントにはこれについて何も記載されていません。私が作成したテストスクリプトも、それが機能しないことを示しています。

テストスクリプト:

function testUserAgentString(){
  var page;
  try {
    page = UrlFetchApp.fetch('http://www.myuseragent.net/',
        {headers: {"User-Agent":
            "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"
        }}).getContentText();
    Logger.log(page);
  } catch(_) {}
}

ログ出力(無関係なHTMLを除く)は次のとおりです。

Mozilla/5.0 (compatible; GoogleDocs; script; +http://docs.google.com)

これは、GASによるUrlFetch要求を実行するときに使用されるデフォルトのユーザーエージェント文字列です。

私は何かを逃しているのですか、それとも何か間違っているのですか?

編集:これは現在不可能なので、Arunの提案に従って、IssueTrackerに拡張リクエストを送信しました。

4

2 に答える 2

9

これは今日は不可能です。ユースケースとともにIssueTrackerに拡張リクエストを記録して、これを確認および検討できるようにしてください。

于 2013-02-25T23:45:39.880 に答える
-2

この方法でUrlFetchAppを使用してヘッダー情報を送信できます。

var url = "http://mymagentohost/api/rest/products?limit=2"

var params = { 
  headers: { 'Content-Type': "application/json", 'Accept': "application/json",
             'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'},
  muteHttpExceptions: true,
  method: "GET",
  contentType: "application/json",
  validateHttpsCertificates: false,
};

var response = UrlFetchApp.fetch(url, params);

ヘッダーセクションにユーザーエージェント情報を追加するだけです。それが役に立てば幸い!

クレジットは次のようになります:Aditya Advani

于 2020-06-25T17:08:47.530 に答える