代理API

開發 Proxy 隨附 Web API,可讓您以程式設計方式與 Proxy 互動。 API 可在 Proxy 設定中指定的埠上使用。

Operations

下列清單顯示可用的 API 作業。

GET /proxy

傳回的實例 ProxyInfo ,其中包含目前執行中 Dev Proxy 實例的相關信息。

範例:取得目前執行中開發 Proxy 實例的相關信息

要求:

GET http://localhost:8897/proxy

回應:

200 OK

{
  "recording": false,
  "configFile": "/Users/user/dev-proxy/devproxyrc.json"
}

POST /proxy

控制目前執行中的 Dev Proxy 實例。

範例:開始錄製

要求:

POST http://localhost:8897/proxy
content-type: application/json

{
  "recording": true
}

回應:

200 OK

{
  "recording": true,
  "configFile": "/Users/user/dev-proxy/devproxyrc.json"
}

範例:停止錄製

要求:

POST http://localhost:8897/proxy
content-type: application/json

{
  "recording": false
}

回應:

200 OK

{
  "recording": false,
  "configFile": "/Users/user/dev-proxy/devproxyrc.json"
}

POST /proxy/jwtToken

產生 JSON Web 令牌 (JWT)。

要求:

POST http://localhost:8897/proxy/jwtToken
Content-Type: application/json

{
  "name": "Dev Proxy",
  "audiences": [
    "https://myserver.com"
  ],
  "issuer": "dev-proxy",
  "roles": [
    "admin"
  ],
  "scopes": [
    "Post.Read",
    "Post.Write"
  ],
  "claims": {
    "claim1": "value",
    "claim2": "value"
  },
  "validFor": 60
}

注意

已註冊的宣告(例如,、isssub、、audexpnbfiatjti) 會自動新增至令牌。 如果您在要求中指定上述任何宣告,API 會忽略您提供的值。

回應:

200 OK

{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6IkRldiBQcm94eSIsInN1YiI6IkRldiBQcm94eSIsImp0aSI6IjkyZjM5YzciLCJzY3AiOlsiUG9zdC5SZWFkIiwiUG9zdC5Xcml0ZSJdLCJyb2xlcyI6ImFkbWluIiwiY2xhaW0xIjoidmFsdWUiLCJjbGFpbTIiOiJ2YWx1ZSIsImF1ZCI6Imh0dHBzOi8vbXlzZXJ2ZXIuY29tIiwibmJmIjoxNzI3MTk4MjgyLCJleHAiOjE3MjcyMDE4ODIsImlhdCI6MTcyNzE5ODI4MiwiaXNzIjoiZGV2LXByb3h5In0.E_Gj9E58OrAh9uHgc-TW8DYfq8YHFrhaUTpKA4yXEIg"
}

POST /proxy/mockrequest

引發模擬要求。 相當於在執行Dev Proxy的控制台中按 w

要求:

POST http://localhost:8897/proxy/mockrequest

回應:

202 Accepted

GET /proxy/rootCertificate?format=crt

下載開發 Proxy 用來解密 HTTPS 要求之 PEM(隱私權增強郵件)格式之跟證書的公鑰。 當您想要在 Docker 容器中執行 Dev Proxy 時信任主機上的跟證書時,此 API 會很有説明。

目前,唯一支援的格式是 crt。 如果您指定任何其他格式或完全未指定格式,API 會傳回 400 錯誤的要求錯誤。

要求:

GET http://localhost:8897/proxy/rootCertificate?format=crt

回應:

content-type: application/x-x509-ca-cert

-----BEGIN CERTIFICATE-----
[base64 encoded certificate]
-----END CERTIFICATE-----

POST /proxy/stopproxy

正常關閉開發 Proxy。

要求:

POST http://localhost:8897/proxy/stopproxy

回應:

202 Accepted

模型

ProxyInfo

目前執行之 Dev Proxy 實例的相關信息。

屬性 類型 描述
recording boolean Proxy 目前是否正在錄製要求
configFile string 開發 Proxy 所使用的組態檔路徑 (唯讀)

JwtOptions

產生 JWT 令牌的選項。

屬性 類型 描述
name string 要為其建立令牌的用戶名稱
audience string[] 要為其建立令牌的物件
issuer string[] 令牌的簽發者
roles string[] 要新增至令牌的角色宣告
scopes string[] 要新增至令牌的範圍宣告
claims KeyValuePair 要新增至令牌的宣告
validFor number 權杖有效持續時間 (以分鐘為單位)
signingKey string 用來簽署令牌的金鑰。 長度必須至少為32個字元。 如果未指定,請使用隨機產生的索引鍵。

JwtInfo

JWT 令牌的相關信息。

屬性 類型 描述
token string JWT 令牌