0

我已經開發了一些谷歌彈性端點。他們在本地工作,但當我部署應用程序(gcloud應用程序部署)時,我得到一個http狀態403禁止。我使用AJAX調用的端點是這樣的:谷歌彈性端點403禁止

var echoEndpoint = function() { 
    $.ajax(userBaseUrl+'/echo', { 
    headers: {'Authorization': 'Bearer ' + userIdToken}, 
    type: 'GET', 
    data: "key=my special key" 
    }) 
} 

我保護與apikey端點並傳遞userIdToken在頭中。上面的代碼產生403禁止。但是,如果我刪除它的工作頭。儘管沒有用戶令牌。這裏是不會產生403

var echoEndpoint = function() { 
    $.ajax(userBaseUrl+'/echo', { 
    type: 'GET', 
    data: "key=my special key" 
    }) 
} 

這裏的代碼我的路我openapi.yaml 的部分.....

 paths: 
     "/echo": 
     get: 
      description: "Echo a test message." 
      operationId: "echo" 
      produces: 
      - "application/json" 
      responses: 
      200: 
       description: "Echo" 
       schema: 
       $ref: "#/definitions/echoMessage" 
      x-security: 
      - firebase: 
       audiences: 
       - "my project-id" 
.... 
definitions: 
    echoMessage: 
    properties: 
     message: 
     type: "string" 

我需要在我的openapi.yaml指定我在請求中發送頭文件?如果是這樣,在哪裏?我試圖將其放入定義部分,但在嘗試部署時會產生INVALID_ARGUMENT錯誤。

回答