需要对 PAT 进行编码以在 REST API 中将其用于 BASH 脚本中的 azure devops,遇到 PAT 编码和传入正文的问题

Need to encode PAT to use it in REST API for azure devops in a BASH script, struck with issue with PAT encoding and passing in the body

需要对 PAT 进行编码才能在 REST 中使用它 API 对于 azure devops,遇到 PAT 编码和传递正文的问题。需要有关格式的帮助以对 PAT 进行编码并在 REST 主体中使用它。我在 BASH 脚本

中使用它
#PAT-Encoding

B64_PAT=$(printf "%s"":$PAT" | base64)


#Create Repo in Azure

"Repo_Creation_Status=$(curl --write-out "%{http_code}\n" --location --request POST "https://dev.azure.com/"${OrganizationName}"/"${projectId}"/_apis/git/repositories?api-version=6.1-preview.1" \
        --header "Authorization: Basic ${B64_PAT}" \
        --header "Content-Type: application/json" \
        --data-raw '{
  "name": "'"$RepoName"'",
    "project": {
        "id": "'"$projectId"'"
          }
}' --output output.txt --silent)"

要使用 CRUL 脚本创建存储库,您可以直接使用 PAT 而无需对其进行编码。

这是一个例子:

curl -X POST \
-u  :PAT  https://dev.azure.com/orgname/projectname/_apis/git/repositories?api-version=6.1-preview.1 \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ 
   "name": "Reponame", 
    "project": 
        {
           "id": "ProjectID" 
        }
}'