首頁  >  文章  >  後端開發  >  如何使用 Go 1.11 驗證 Google App Engine 標準上的私人 Go 模組?

如何使用 Go 1.11 驗證 Google App Engine 標準上的私人 Go 模組?

Linda Hamilton
Linda Hamilton原創
2024-10-26 01:03:27677瀏覽

How to Authenticate a Private Go Module on Google App Engine Standard Using Go 1.11?

使用Go 1.11 在Google App Engine Standard 上驗證私有Go 模組

在Go 1.11 中,模組的引入提供了更有效的方法管理依賴關係。但是,在 Google App Engine Standard 上使用私有模組時,可能會出現驗證問題。當嘗試部署 gcloud 應用程式並遇到 403 Forbidden 錯誤時,此問題變得很明顯。

為了解決此問題,已採用供應商或使用第三方相依性管理工具(例如 DEP)等傳統方法。然而,對於新的模組系統,這些解決方案可能並不理想。

使用模組替換的解決方案

除了處理憑證之外,一個可行的解決方案是使用 Go 的模組替換功能可指示 GAE 使用本地代碼。此方法涉及:

  1. 設定目錄結構:

    使用以下目錄結構組織您的專案:

    myService/
    |__ src/
    |    |__ service.go
    |    |__ go.mod
    |__ build/
       |__ gae/
           |__ src/  // Symlink to ../../src
           |__ modules/  // Git ignored
           |__ app.go
           |__ go.mod
           |__ app.yaml
  2. 使用以下目錄結構組織您的專案:
  3. 修改GAE go.mod:

    module myServiceGAE
    
    require (
        bitbucket.org/me/myService v0.0.0
        google.golang.org/appengine v1.4.0
    )
    
    replace bitbucket.org/me/myService => ./src
  4. 在gae目錄中建立一個go.mod檔案並指定依賴項,包括使用replace的私有模組的本地路徑:
  5. 複製或複製私人模組:

在gae目錄下的modules資料夾中,複製或複製您的私有模組建置專案.

這種方法可讓您將私有模組程式碼與主專案分開,同時確保 GAE 在部署期間使用正確的版本。

    優點:
  • 將私有模組與 GAE 解耦,可以更輕鬆地部署到其他平台。

避免需要額外的依賴管理工具。

    缺點:
處理依賴其他私有模組的私有模組時變得更加複雜。

以上是如何使用 Go 1.11 驗證 Google App Engine 標準上的私人 Go 模組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn