簡體   English   中英

s4sdk-無法連接到NodeJS微服務

[英]s4sdk - Cannot connect to NodeJS microservice

我正在使用NodeJS微服務擴展第9步中提到的教程。 但是,與后端的通訊存在一些奇怪的問題。

我的流程是一個應用路由器,該路由器定向到HTML5微服務(靜態buildpack),並且消耗Java或NodeJS微服務。 Java部分與身份驗證范圍一起正常工作,但是對於NodeJS,當我調用各自的路徑/ node / hello時,我總是會收到404(未找到)錯誤(hello應該返回服務器的函數輸出)。

這是我用於路由的xs-app.json

{
  "welcomeFile": "index.html",
  "authenticationMethod": "route",
  "websockets": {
    "enabled": true
  },
  "routes": [
    {
      "source": "/odata/v4/(.*)",
      "target": "/odata/v4/$1",
      "destination": "business-partner-api"
    },
    {
      "source": "/",
      "target": "/",
      "destination": "business-partner-frontend"
    },
    {
      "source": "/node/(.*)",
      "target": "/$1",
      "destination": "business-partner-node"
    }
  ]
}

問題在/ node塊上,其他都可以正常工作。 我還注意到了另一個奇怪的問題,即如果我將默認目標(/)從business-partner-frontend替換為business-partner-node,則應用路由器會成功地通過傳播身份驗證的方式調用節點js服務器,因此出現了問題與xs-app文件相關,而與目標本身無關。

我也嘗試將端口添加到目標並添加映射html5項目的靜態文件,但未成功。

節點部分配置中可能缺少任何內容嗎?

最好的祝福,

問題可能出在您的路由順序中,這對於路由很重要。 當前路徑與source的第一個匹配將確定路徑。 就您而言,第二條路由的/匹配所有路徑,包括/node/...

重新排序您的路由,使節點目標位於前端目標之前。

暫無
暫無

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

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