簡體   English   中英

c#mvc 5為什么我的會話為空?

[英]c# mvc 5 Why is my session null?

因此,我正在使用Twitter API。 我的代碼如下所示:

        public ActionResult AuthorizeTwitter()
    {            
        Response.Redirect(GetRequestToken());
        return View();
    }

    private string GetRequestToken()
    {
        var twitter = new Twitter(consumer, consumerSecret, oauth_token, oauth_token_secret);
        twitter.BaseURI = requestUrl;
        var result = twitter.GetRequest("http://localhost:60707/Twitter/GetAccessToken");

        string[] resultArray = result.Split('&');
        twitter.RequestToken = resultArray[0].Split('=')[1];
        twitter.RequestTokenSecret = resultArray[1].Split('=')[1];

        var requestToken = Session["oauth_token"] = resultArray[0].Split('=')[1];            
        Session["oauth_secret"] = resultArray[1].Split('=')[1];

        string redirect = authorizeUrl + requestToken;
        return (redirect);
    }

    public ActionResult GetAccessToken()
    {

        string verifier = Request.Params["oauth_verifier"];
        string token = Request.Params["oauth_token"];
        string secret = Session["oauth_secret"].ToString();
        .....
    }

我在GetRequestToken方法中設置了Session["oauth_secret"] ,當我調試時,我認為它很好。

但是,當我進入GetAccessToken ,該值不再存在,Session為null 為什么是這樣?

另外,還有一個相關的問題,我應該在Session中保留這些值嗎?

這樣做有什么問題嗎,還有更好的方法嗎?

您是否檢查過Twitter的accessToken已過期? 我認為時間有限,此后您必須再次獲得。 考慮一下自動獲取accessToken的時間量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM