簡體   English   中英

如何在GO中獲取Azure AD JWT

[英]How to get Azure AD JWT in GO

所以我正在用 Go 測試水域。我需要手動對 Azure AD 保護端點進行 REST 調用。 我正在使用 Azure 身份 package,但我仍然無法獲得令牌。

package main

import (
    "context"
    "fmt"

    azi "github.com/Azure/azure-sdk-for-go/sdk/azidentity"
)

func main() {

    cred, err := azi.NewInteractiveBrowserCredential(nil)
    if err != nil {
        fmt.Println(err.Error())
        return
    }

    fmt.Println("No error 😎")
    var ctx = context.Context()
    fmt.Println(cred.GetToken(ctx))
}

然后會產生以下錯誤響應

# command-line-arguments
.\main.go:19:27: missing argument to conversion to context.Context: context.Context()

有人可以指出我做錯事的正確方向嗎?

context.Context 是一個接口,而不是一個方法( https://pkg.go.dev/context#Context ),這就是你收到錯誤的原因,你試圖將任何內容轉換為該類型。

對 GetToken 方法的調用需要實現 context.Context 的內容。

嘗試用var ctx = context.Context()替換var ctx = context.Background()

在此處閱讀有關上下文的更多信息https://pkg.go.dev/context

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM