1
如果我在路由器的後(「/ some」)路徑中有Future [A]作爲結果(最後一行),Ajax客戶端無法獲得響應並且超過時間到。等待不起作用。未來onComplete/onSuccess {...}工作正常,但對於服務器,所以如何將它翻譯爲客戶端作爲響應? (Scalatra的框架)Ajax響應等待未來(scala)
服務器:
post("/stations/test") {
Future[Int] {
// parse jsonData ...
Thread.sleep(3000)
1
}.onComplete { x =>
// do something on server ...
}
}
客戶端:
@JSExport
def testFuture() = {
val request = Ajax.post("/stations/test", jsonData)
}
謝謝!如果我把響應(HttpServletResponse類型)而不是「響應(數據)」,它運作良好。週末愉快! 和客戶端應該是這樣的: Ajax.post( 「/站/試驗」, 「ABC」) .recover { 情況dom.ext.AjaxException(REQ)=> // ... } .map(req => { //處理所有狀態代碼 }) – aepetelin