我从 Suave 和 F# 开始。我试图在我的 webpart 中传递一个 json 序列化对象以在我的响应中获取它。
在php中我有这个
<?php
header('Access-Control-Allow-Credentials:true');
header('Access-Control-Allow-Headers:Content-Type, Accept');
header('Access-Control-Allow-Methods:GET, POST, PUT, DELETE, OPTIONS');
header('Access-Control-Allow-Origin:*');
?>
{
"player1Key":"hdegftzj25",
"gameKey":"aegfhzkfszl74852"
}
有了这个我得到了我的 json 对象,然后我尝试对 Suave 和 Newtonsoft.Json 做同样的事情
type gameCreate= {
player1Key : string
gameKey: string
}
let create= { player1Key = "BadBoys2"; gameKey = "zLUGgtrht4456" }
let json = Newtonsoft.Json.JsonConvert.SerializeObject(create)
//OK (acc |> Json.serialize |> Json.format )
let php =
request (fun r ->
match r.queryParam "playerName" with
| Choice1Of2 name -> OK (movies |> Json.serialize(json) |> Json.format(json))
//|> Response.response(Json.toJson(info))
//|> OK
| Choice2Of2 msg -> BAD_REQUEST msg)
let webPart =
choose [
path "/" >=> (OK "Home")
path "/elm/api/create.php" >=> php
]
startWebServer defaultConfig webPart
所以我可以创建和序列化一个 json 对象,但我不知道如何在我的 web 部件中将它作为 http 响应传递,并且使用上面的代码,我在 let php 中的表达式类型上不断出现错误