F#- 使用 HttpFs.Client 和 Hopac:如何获取响应代码、响应 headers 和响应 cookie?
F#- Using HttpFs.Client and Hopac: How do I get a response code, response headers and response cookies?
我将 F# 与 HttpFs.Client 和 Hopac 一起使用。
我能够通过使用如下代码获得响应 body 和 JSON/XML 响应的每个节点的值:
[<Test>]
let ``Test a Create user API``() =
let response = Request.createUrl Post "https://reqres.in/api/users"
|> Request.setHeader (Accept "application/json")
|> Request.bodyString ReadFile
|> Request.responseAsString
|> run
printfn "Response of get is %s: " response
let info = JsonValue.Parse(response)
let ID = info?id
printfn "ID in Response is %i: " (ID.AsInteger())
但是我如何获得响应代码、响应 headers 和响应 cookie?我需要在上面显示的相同方法中获取它,以便我也可以对这些项目进行断言。
我确实尝试了response.StatusCode、response.Cookies.["cookie1"]但是当我在响应后添加句点时没有出现这样的方法。
let response =
Request.createUrl Post "https://reqres.in/api/users"
|> Request.setHeader (ContentType (ContentType.create("application", "json")))
|> Request.bodyString token //Reading content of json body
|> HttpFs.Client.getResponse
|> run
请阅读文档https://github.com/haf/Http.fs
第 3 点显示了如何在响应中访问 cookie 和 headers。
response.StatusCode
response.Body // but prefer the above helper functions
response.ContentLength
response.Cookies.["cookie1"]
response.Headers.[ContentEncoding]
response.Headers.[NonStandard("X-New-Fangled-Header")]
我将 F# 与 HttpFs.Client 和 Hopac 一起使用。
我能够通过使用如下代码获得响应 body 和 JSON/XML 响应的每个节点的值:
[<Test>]
let ``Test a Create user API``() =
let response = Request.createUrl Post "https://reqres.in/api/users"
|> Request.setHeader (Accept "application/json")
|> Request.bodyString ReadFile
|> Request.responseAsString
|> run
printfn "Response of get is %s: " response
let info = JsonValue.Parse(response)
let ID = info?id
printfn "ID in Response is %i: " (ID.AsInteger())
但是我如何获得响应代码、响应 headers 和响应 cookie?我需要在上面显示的相同方法中获取它,以便我也可以对这些项目进行断言。
我确实尝试了response.StatusCode、response.Cookies.["cookie1"]但是当我在响应后添加句点时没有出现这样的方法。
let response =
Request.createUrl Post "https://reqres.in/api/users"
|> Request.setHeader (ContentType (ContentType.create("application", "json")))
|> Request.bodyString token //Reading content of json body
|> HttpFs.Client.getResponse
|> run
请阅读文档https://github.com/haf/Http.fs
第 3 点显示了如何在响应中访问 cookie 和 headers。
response.StatusCode
response.Body // but prefer the above helper functions
response.ContentLength
response.Cookies.["cookie1"]
response.Headers.[ContentEncoding]
response.Headers.[NonStandard("X-New-Fangled-Header")]