gpt4 book ai didi

c# - 是否可以在单独的 HTTP 调用中加载对象并重用该对象?

转载 作者:行者123 更新时间:2023-11-30 21:45:53 24 4
gpt4 key购买 nike

所以我有一个 WEB API,例如我有这个方法:

public JSONResult GetUserInfo(string username)
{
Reddit reddit = new Reddit("bot12345", "12345"); //load reddit and login
reddit.GetSubmittedVideos(username);

var user = User.Get(username);

//rest of the code here
}

你可以看到我有这一行 Reddit reddit = new Reddit("bot12345", "12345"),这一行花了将近 2 秒,因为它需要通过 Reddit API 登录。所以每次有人调用 GetUserInfo 方法时,我的代码将花费超过 2 秒的时间来返回结果,因为它需要调用 Reddit。

我想知道是否可以在我的 GetUserInfo 方法中加载 Reddit 对象,我只需要调用 reddit.GetSubmittedVideos。但我记得 HTTP 是无状态的,这可能吗?

为糟糕的英语道歉。

最佳答案

HTTP 是无状态的,但 ASP.NET 有一个 Session 对象,它与一个用户 session 隔离,并且可以存储跨请求持续存在的数据。所以至少你可以做这样的事情:

Reddit reddit = Session["reddit"] as Reddit;
if(reddit == null)
{
reddit = new Reddit("bot12345", "12345"); //load reddit and login
Session["reddit"] = reddit;
}
reddit.GetSubmittedVideos(username);

如果相同的 Reddit 对象可以用于所有 用户 session ,那么您可以使用 Application 类而不是使用 session

关于c# - 是否可以在单独的 HTTP 调用中加载对象并重用该对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39752654/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com