如何使用 flurl 获取响应 cookie
How to get a response cookie with flurl
如何使用 flurl 获取响应 cookie?我搜索了一些参考资料并研究了 flurl.dev,但仍然对如何应用它们感到困惑。抱歉我不是程序员,我还有很多东西要学。
我使用的简单代码:
var strUrl = await url
.WithHeaders(new
{
user_agent = "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36",
content_type = "application/json",
cookie = "cookie"
})
.PostJsonAsync(new
{
user = "user",
password = "password"
})
.ReceiveString();
结果:200 OK
这里的问题是,当您调用 ReceiveString()
时,您将获得响应正文并有效地丢弃 PostJsonAsync
返回的响应消息的其他方面。您可以像这样在单独的步骤中获取响应、cookie 和正文:
var resp = await url
.WithHeaders(...)
.PostJsonAsync(...);
var cookies = resp.Cookies; // list of FlurlCookie objects
var body = await resp.GetStringAsync();
如何使用 flurl 获取响应 cookie?我搜索了一些参考资料并研究了 flurl.dev,但仍然对如何应用它们感到困惑。抱歉我不是程序员,我还有很多东西要学。 我使用的简单代码:
var strUrl = await url
.WithHeaders(new
{
user_agent = "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36",
content_type = "application/json",
cookie = "cookie"
})
.PostJsonAsync(new
{
user = "user",
password = "password"
})
.ReceiveString();
结果:200 OK
这里的问题是,当您调用 ReceiveString()
时,您将获得响应正文并有效地丢弃 PostJsonAsync
返回的响应消息的其他方面。您可以像这样在单独的步骤中获取响应、cookie 和正文:
var resp = await url
.WithHeaders(...)
.PostJsonAsync(...);
var cookies = resp.Cookies; // list of FlurlCookie objects
var body = await resp.GetStringAsync();