Hacktoberfest 2026:維護者為十月標記出來的 issue,仍然開放、適合新手。 瀏覽 Hacktoberfest issue

ApiOps CLI Publisher fails with empty urlTemplate error.

未關閉
#317 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

維護者通常 1 天內回覆

還沒有人認領這個 Issue。

評估

難度
3/5
預估耗時
1-2 天
新手友好度
55/100
Issue 類型
缺陷
描述清晰度
基本清楚
活躍度
活躍
技術堆疊
typescript
領域
api, cli

研究方向

Start with the supplied operationInformation.json for notification-socket-v1/operations/onHandshake and trace how apiops publish processes its urlTemplate. Reproduce with the command and artifact described in the issue; done means the WebSocket handshake operation can be published with an empty urlTemplate.

由索引模型根據 Issue 內容生成。

描述

type:bug
Command that triggered the bug

npx apiops publish

Expected behavior

The publisher pipeline can publish the Websocket onHandshake API with a empty urlTemplate.

Actual behavior

Our Publisher pipeline is failing when running the apiops publish command with this error:

The Command from the pipeline:

npx apiops publish `
            --resource-group '${{ parameters.resourceGroupName }}' `
            --service-name '${{ parameters.apiManagementServiceName }}' `
            --source '${{ parameters.artifactSource }}' `
            --overrides '${{ parameters.configurationPath }}' `
            --subscription-id $subscriptionId `
            --commit-id '$(Build.SourceVersion)'

The Error:

ERROR PUT apioperation/notification-socket-v1/onHandshake: HTTP 400: {"error":{"code":"ValidationError","message":"One or more fields contain incorrect values:","details":[{"code":"ValidationError","target":"urlTemplate","message":"'urlTemplate' should not be empty."}]}}

The API is a WebSocket API & the Socket is opening a handshake to the PubSub. We need an empty urlTemplate for it because we cant change it in azure.

This is the artifact file from it (apim-artifacts\apis\notification-socket-v1\operations\onHandshake\operationInformation.json):

{
  "id": "/subscriptions/<>/resourceGroups/<>/providers/Microsoft.ApiManagement/service/<>/apis/notification-socket-v1/operations/onHandshake",
  "type": "Microsoft.ApiManagement/service/apis/operations",
  "name": "onHandshake",
  "properties": {
    "displayName": "onHandshake",
    "method": "GET",
    "urlTemplate": "",
    "templateParameters": [],
    "description": "WebSocket opening handshake",
    "responses": [],
    "policies": null,
    "effectivePath": null
  }
}
apiops CLI version

1.0.4

Environment details
  • Image: ubuntu-latest
  • NodeJs: 22.x
CI/CD environment

Azure DevOps

Is this bug blocking you?

Yes

主要語言
TypeScript
星號
29
分支
11
平均合併
1 天 15 小時
30 天內合併 PR
15

環境準備

在 Codespaces 中開啟

在瀏覽器裡用你自己的 GitHub 帳號啟動這個專案的開發容器。

  • 沒有 Dockerfile 或 Docker Compose 檔案
  • 沒有 Pull Request 範本
  • 閱讀貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

Azure/apiops-cli 的其他 Issue

查看 Azure/apiops-cli 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。