[英]Scala REST API call to a Java REST with FormParams
我想知道你們是否確實知道在Scala中是否可以調用采用@FormParam
參數的Java REST客戶端函數。
如果我在Java客戶端中的功能是這樣的:
@Path("registerEmail")
@POST
public RegisterEmailResult doRegisterEmail(@FormParam("email") final String email, @FormParam("password") String password/* Some other params */) {
如何在Scala中傳遞一些@FormParam參數? 我嘗試了這個:
def registerEmail(registerEmail: RegisterEmail): Future[Boolean] =
post(
url("/theUrl/registerEmail"),
new Gson().toJson(registerEmail)
).map {
case data => true
}.recover {
case _ => false
}
RegisterEmail
模型具有Java函數參數的所有字段。
我錯過了什么 ? 否則,我將不得不像@QueryParams
一樣再次使用Java函數,這似乎是一種更好的方法。
如果還包括部分導入,則更容易理解代碼。 可以使用url(我假設是Play的play.api.libs.ws.WS.url(...))來傳遞表單數據:
WS.url("/theUrl/registerEmail")
.post(Map("email" -> Seq("someone@somewhere.com"),
"password" -> Seq("secretish")))
有關更多詳細信息,請參見https://www.playframework.com/documentation/2.3.x/ScalaWS (特別是搜索“提交表單數據”)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.