wso2api manager 4.0 with Post Request Error: Not Found

wso2api manager 4.0 with Post Request Error: Not Found

我想用 wso2 api 管理器保护 .net 核心 api,为此我在 api 上启用了 swagger 并且能够获得 post 响应。我创建了 Api with swagger defination

http://localhost:5000/swagger/v1/swagger.json

和给定的端点 http://localhost:5000/api/BigData 将得到响应 ui

现在我正在尝试使用 api 测试 wso2 的令牌api 显示错误

来自 wso2-am 的 curl 请求

curl  reuqest  semding  from  wso2-am  ```curl -X 'POST' \
  'http://localhost:8280/api/v1/api/BigData' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'Internal-Key: eyJraWQiOiJnYXRld2F5X2NlcnRpZmljYXRlX2FsaWFzIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJhZG1pbkBjYXJib24uc3VwZXIiLCJpc3MiOiJodHRwczpcL1wvbG9jYWxob3N0Ojk0NDNcL29hdXRoMlwvdG9rZW4iLCJrZXl0eXBlIjoiUFJPRFVDVElPTiIsInN1YnNjcmliZWRBUElzIjpbeyJzdWJzY3JpYmVyVGVuYW50RG9tYWluIjpudWxsLCJuYW1lIjoiQmlnRGF0YUFQSSIsImNvbnRleHQiOiJcL2FwaVwvdjEiLCJwdWJsaXNoZXIiOiJhZG1pbiIsInZlcnNpb24iOiJ2MSIsInN1YnNjcmlwdGlvblRpZXIiOm51bGx9XSwiZXhwIjoxNjI0OTIyMzg3LCJ0b2tlbl90eXBlIjoiSW50ZXJuYWxLZXkiLCJpYXQiOjE2MjQ4NjIzODcsImp0aSI6ImZiYjQ2OGQ0LWUyOTItNGEyZC1hZmEzLTdhNzFlODUxNTlhNCJ9.Xkz9jigCPs3I65kI40rigE6L8mA-w4kks3n7Cabahg1dMVEo8AVs64PXuKBshucuT_vk5ms-7wFiIiI0pdXrL1ymOlEacBtW2r1F-WvV7o9SVw6lpF4EQNsIFi96Exe5Gg0k2wSaG1iErJ2P8boOQGI66fudGfjC-Gt1RJxfE-ZwQ_aS7fNur4G7HFAbBOdSq3yNDWjsMiv9k4IBlQ-IkJj88zSM6eXnHbtiAJKB84bAkFX7PDxXzjdItGkTKBx2oW11SO27xvqlrlJCHh6dcvEKb1_XZIjyrrvQjTGTX0cTgUlL0HQFOL9RwavrDwXh_fsP51zhGbbLozuUbhUKWg' \
  -d '{
  "messageID": "string",
  "tenantName": "string",
  "tenantID": "string",
  "entityID": "string",
  "entityType": "string",
  "dataType": "string",
  "messageKind": "string",
  "routing": "string",
  "payload": "string",
  "type": "string",
  "clientID": "string",
  "userID": "string",
  "isAdmin": true,
  "fabric": "string",
  "capabilityId": "string",
  "sourceSystem": "string",
  "applicationName": "string"
}'```

当我再次检查端点时,不允许其显示方法

关于共享信息,我相信您已经将 API 资源配置为 /api/BigData。如果是这种情况,请将 ProductionSandbox 端点更新为 http://localhost:5000 而不是实际端点的完整 URL 以克服 404 错误。

API 管理器使用并附加在 Production/Sandbox 端点末尾定义的 API 资源。因此,当您配置 API 并公开它时,您必须确保选择正确的端点。

例如:

如果您有一个具有以下端点 https://backendserver/api/v1/gethttps://backendserver/api/v1/post 的实际后端服务器,那么您必须在 API 管理器中配置一个 API,如下所示

  • 使用以下两个资源创建一个API
    • /get
    • /post
  • 将生产/沙盒端点配置为 https://backendserver/api/v1

然后,如果您使用 API 管理器端点 (https://apimanager:8243/your-api/v1/get) 调用 API,/get 资源将附加到配置的端点和请求将作为 https://backendserver/api/v1/get.

希望这能解释并让您简要了解 API 管理器中的 URL 映射。