2017-03-16 44 views
0
parmeter值

我想拒絕讀取參數值:如何讀取拒絕阿卡

parameter(paramName.as[Int] ? default).recover[Tuple1[Int]]{ 
case Seq(MalformedQueryParamRejection(paramName, _, _)) => 
     complete(invalidQueryParameterError(paramName, ????)) 
} 

,而不是???我想通過我們的參數值 任何想法?

回答

0

看看akka.http.scaladsl.server.ParameterDirectives,您可以看到如何通過handleParamResult處理查詢參數。看起來參數值沒有被傳遞,所以你實際上不能從Rejection對象中提取錯誤的值。

但是,有一些Akka Http提供的關於查詢參數處理結果的標準消息。我想到的唯一解決方案是,如果您確實需要參數值,則解析該響應。但是,我不明白你爲什麼要那樣做。

作爲示例,here,您可以看到當查詢參數格式錯誤時,Akka返回的預期消息。不過,我認爲依靠這些標準信息並不是一個好習慣。