10
我有一個路線如下:阿卡-HTTP:如何設置響應頭
val route = {
logRequestResult("user-service") {
pathPrefix("user") {
get {
respondWithHeader(RawHeader("Content-Type", "application/json")) {
parameters("firstName".?, "lastName".?).as(Name) { name =>
findUserByName(name) match {
case Left(users) => complete(users)
case Right(error) => complete(error)
}
}
}
} ~
(put & entity(as[User])) { user =>
complete(Created -> s"Hello ${user.firstName} ${user.lastName}")
} ~
(post & entity(as[User])) { user =>
complete(s"Hello ${user.firstName} ${user.lastName}")
} ~
(delete & path(Segment)) { userId =>
complete(s"Hello $userId")
}
}
}
}
我的迴應的內容類型應始終application/json
,因爲我已經將它設置爲get
請求。但是,我在測試中得到的是text/plain
。如何在響應中正確設置內容類型?
在附註中,akka-http文檔是我見過的最無價值的垃圾之一。幾乎每個鏈接到示例代碼的鏈接都被打破,他們的解釋僅僅表明了明顯。 Javadoc沒有代碼示例,我無法在Github上找到它們的代碼庫,因此從單元測試中學習也不成問題。
我同意你關於文檔的狀態。我會說雖然作爲一個社區項目,個人可以自由地主動幫助改善他們。 – acjay
@acjay個人只有在掌握好代碼之後才能做出貢獻,這些代碼受到現有的窮人文檔的嚴重阻礙。是的,人們總是可以查看源代碼,但同樣,這不適合初學者,耗時且對大多數問題不應該是必需的。如果他們一直希望人們查看源代碼,他們不應該假裝有任何文檔。 –