gpt4 book ai didi

instasharp 中的 oAuth.RequestToken(code) 不起作用并返回 null

转载 作者:行者123 更新时间:2023-12-01 17:48:23 24 4
gpt4 key购买 nike

我有一个通过 Instasharp 使用 instagram 的 ASP.NET MVC5 应用程序。我的应用程序在获得 Instagram 批准后的 2 周内运行良好。但是突然停止工作,通过使用 instasharp 逐行检查代码,我发现在收到来自 instagram 的代码后,当我想通过运行下面的代码获取访问代码时,我从 instagram 获得了空值。

 ...
var config = InstagramInfo.Info.Config;
var auth = new OAuth(config);
var instagramauthInfo = await auth.RequestToken(code);
....

aut.RequestToken(code) 返回 null。即使当我使用 OAuth.ResponseType.Token instad 代码时,它在验证并重定向到 RedirectUrl 后完全从 instagram 返回 null。我尝试过但没有帮助我的解决方案是:

  1. 使用最新版本的 Instasharp
  2. 使用 Https(在 Instagram 的一部分位置它说在某些情况下如果你不使用 https instagram 可能会为访问 token 返回 Null)
  3. 在某个主题中有人说他设置了 CONTENT TYPE,但我不知道在 instasharp 中的哪里设置内容类型

请帮我解决这个问题。:(

最佳答案

尝试根据https://github.com/InstaSharp/InstaSharp/tree/master/src/InstaSharp.Sample.Mvc检查你的代码并更改 OAuth 方法。它应该有效。

public async Task<ActionResult> OAuth(string code)
{
var values = new Dictionary<string, string>
{
{ "client_id", config.ClientId },
{ "client_secret", config.ClientSecret },
{ "grant_type", "authorization_code" },
{ "redirect_uri", config.RedirectUri },
{ "code", code }
};
var content = new FormUrlEncodedContent(values);
var response = await new HttpClient().PostAsync("https://api.instagram.com/oauth/access_token", content);
if (!response.IsSuccessStatusCode)
throw new Exception("Auth failed");
var responseString = await response.Content.ReadAsStringAsync();
dynamic data = System.Web.Helpers.Json.Decode(responseString);
var oauthResponse = new OAuthResponse
{
AccessToken = data.access_token,
User = new InstaSharp.Models.UserInfo
{
FullName = data.user.full_name,
Id = long.Parse(data.user.id),
ProfilePicture = data.user.profile_picture,
Username = data.user.username
}
};
Session.Add("InstaSharp.AuthInfo", oauthResponse);
return RedirectToAction("Index");
}

关于instasharp 中的 oAuth.RequestToken(code) 不起作用并返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38991566/

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