[英]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.