Google 驱动器 SDK/API gapi 无法在 IIS 服务器上加载 auth(Javascript)

Google Drive SDK/API gapi can't load auth on IIS server(Javascript)

我正在尝试使用 Javascript 在我的表单中获取 Google Drive Picker,但我的 gapi 对象不会加载 "auth"。

Uncaught TypeError: Cannot read property 'authorize' of undefined

我的代码在我的测试环境(http 服务器)中工作,但是一旦我在我的工作环境(IIS7 服务器)中实现它,我就返回了上面的错误。可能值得注意的一件事是,我的测试环境运行一个 .html 文件,而工作环境运行一个 .php 文件,它们在结束所以我不确定这是否会成为问题。

如果有人能告诉我哪里出错了,我将不胜感激!

这是我的代码:

var googlebtn = document.getElementById("GoogleBtn");

function onApiLoad(){

    gapi.load('auth',{'callback':onAuthApiLoad});

    gapi.load('picker'); 
}

function onAuthApiLoad(){

    window.gapi.auth.authorize({
        'client_id':'583082286729',
        'scope':['https://www.googleapis.com/auth/drive']
    },handleAuthResult);
} 
var oauthToken;

function handleAuthResult(authResult){
    if(authResult && !authResult.error){
        oauthToken = authResult.access_token;
        console.log(oauthToken);
        createPicker();
    }
}

function createPicker(){    
    var picker = new google.picker.PickerBuilder()
        .addView(new google.picker.DocsView())                
        .setOAuthToken(oauthToken)
        .setDeveloperKey('AIzaSyAe3mAw6BvQzkpbTWxns4UFAbATN_1euQM')
        .setCallback(pickerCallback)
        .build();
    picker.setVisible(true);
}

function pickerCallback(data) {

    if (data[google.picker.Response.ACTION] == google.picker.Action.PICKED)       {
      var doc = data[google.picker.Response.DOCUMENTS][0];
      var id = doc[google.picker.Document.ID];

    }
    if(data[google.picker.Response.ACTION] == google.picker.Action.CANCEL){

    }

  }


googlebtn.addEventListener('click', function(){

onApiLoad();

});

原来它没有正确加载 api(我的 gapi object 缺少函数的原因),通过在header.