【问题标题】:LinkedIn access token API returns null values in C#LinkedIn 访问令牌 API 在 C# 中返回空值
【发布时间】:2020-07-29 14:32:51
【问题描述】:

我已经在 C# 代码中的 Web 应用程序上集成了 API(使用 LinkedIn 登录),它在实时环境中运行良好,现在它停止工作了。

检查代码后,尝试在https://www.linkedin.com/oauth/v2/accessToken 上发布数据以获取访问令牌并收到来自Linkedin API 的响应空

这里是代码

 var client = new RestClient("https://www.linkedin.com/oauth/v2/accessToken");
            var request = new RestRequest(Method.POST);
            request.AddParameter("grant_type", "authorization_code");
            request.AddParameter("code", code);
            request.AddParameter("client_id", clientId);
            request.AddParameter("redirect_uri", redirectURL);       
            request.AddParameter("client_secret", clientSecret);
            IRestResponse response = client.Execute(request);
            var content = response.Content;

response.content 即将为空。 谁能帮我找出这里出了什么问题。

【问题讨论】:

    标签: linkedin linkedin-api


    【解决方案1】:

    我认为您使用的参数需要作为标题而不是查询字符串参数。尝试将 addparamter 更改为 addheader。它应该可以正常工作。

    【讨论】:

    • 我已将 addparamter 更改为 addheader 但仍然无法正常工作
    • 刚查了文档,应该是表单帖。不确定如何使用 restclient 进行表单发布,但您可以在此链接 codeproject.com/Tips/497123/… 找到一些帮助
    【解决方案2】:

    我去了详细的错误发现

    “底层连接已关闭:发送时发生意外错误”

    这是从这段代码发生的

    ServicePointManager.SecurityProtocol = (SecurityProtocolType)(MySecurityProtocolType.Tls12 | MySecurityProtocolType.Tls11 | MySecurityProtocolType.Tls | MySecurityProtocolType.Ssl3);
    

    我的应用程序是在 .Net framework 4.0 中构建的

    发现一些建议将版本 4.0 升级到 4.5 并使用此代码

     System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12; 
    

    有什么方法可以运行这个 4.0 框架?

    【讨论】:

      猜你喜欢
      • 2020-02-29
      • 1970-01-01
      • 1970-01-01
      • 2020-05-06
      • 1970-01-01
      • 2014-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多