UrlFetch状态码200正常,但响应显示“不支持的浏览器”

时间:2018-07-18 22:47:03

标签: google-apps-script user-agent urlfetch siteminder

我为以下功能设置了每日触发器,以使用基本身份验证登录到我公司提供的网址,并将JSON响应下载到Google Spreadsheet中。稍后,我将解析此响应到电子表格表中。

响应代码显示为200 OK,但是响应文本显示ERROR,并且在返回的html响应中提到了“不支持的浏览器”

function test1(){
  var url = "https://some.website.com/path1/path2/path3/";
  var user = 'test123@test.com';
  var pwd = 'mypass123';

  var res = UrlFetchApp.fetch(url, {
    'headers': {
      'SMAGENTNAME' : '-SM-uL9Ydk9ZgPvYi+geshsOjQi7kbevUvOTmZvMksmphUle4s7h0Mx4uhOXXq/8JSBQ06Y',
      'Authorization': 'Basic ' + Utilities.base64Encode(user + ':' + pwd, Utilities.Charset.UTF_8)
    }
    });      
  Logger.log(res.getResponseCode());
  Logger.log(res.getContentText());
}

我收到以下html响应:

    ...</head>

<body ng-init="errorMessage=''; errorTitle='ERROR'; appName='ABC'; browserLocale='null'; requireCorpCred=false;downTimeNotificationSvc=''; targetUrl='https://abc.something.xxx.com/portal/site/something'; userNameType='text'; passwordType='text'; ">
    <div ng-controller="LoginController as vm" class="login-background container-fluid" data-ng-cloak>
        <xxx-cookie-policy></xxx-cookie-policy>
        <div class="row auth-body" ng-style="{'background-image':'url({{vm.backgroundImg}})'}">
            <xxx-unsupported-browser></xxx-unsupported-browser>
            <div class="auth-section col-xl-3 col-md-3 col-sm-11 col-xs-12">
                <a class="help" data-ng-click="vm.gotoSupportPage()">
                    <i class="xxx-icon xxx-icon-help"></i>
                </a>.......

我在网上发现某些服务器仅允许使用公认的浏览器。我们公司的站点使用SiteMinder身份验证层。我猜Google Appsscript无法识别为浏览器,并且也不允许自定义或对其 User-Agent 进行欺骗。

是否有解决方法来下载响应?

0 个答案:

没有答案