-1
空的情况下,我有以下POST体的例子:处理中阶游戏框架
{ "Id": "123abxy"}
{ "customUrl": "http://www.whiskey.com","Id": "123abxy"}
{ "size": "88", "customUrl": "http://www.whiskey.com","Id": "123abxy"}
与以下端点:
case class aType(
customUrl: Option[String],
Id:Option[String],
size:Option[String]
)
@ResponseBody
def addCompany(
@RequestBody a: aType,
@ModelAttribute("action-context") actionContext: ActionContext
): DeferredResult[Created] = Action[Created]
{
val customUrl = {
a.customUrl
}
val size = {
if (a.size == None) {None}
else Option(a.size.get.toLong)
}
val Id = {
a.Id
}
val handle = register(
customUrl,
Id,
size
).run()
}.runForSpring[Nothing](executors, actionContext)
另外:
def register(
customUrl: Option[String],
Id: Option[String],
size: Option[Long]
)
鉴于上述情况,我想知道正确的方法来处理size
和customUrl
未传递int的情况o POST正文。
在这种情况下,由于size
可以是一个值(Long
)或null
和customUrl
可以是String
或null
,我将承担适当的数据类型来处理,这将是Option[String]
和Option[Long]
为customUrl
和size
,分别。
我的问题是如何改变if-else
条款来处理null或上述情景String
/Long
,这样我就可以通过有效的变量进入register(..)
功能?
干杯,