Tag: oauth

.NET(C#)的Twitter OAuth授权问题

我一直在拉我的头发来弄清楚我们在这里出了什么问题,显然我无法做到。 我尝试创建一个基本结构,以便在.NET(OA)上使用Twitter API(C#),但是出了点问题,我看不出它是什么。 例如,当我发送请求以获取请求令牌时 ,我返回401 Unauthorized响应,并返回如下消息: 无法validationoauth签名和令牌 我用来创建签名的签名库如下(我用虚拟值替换了我的实际使用者密钥): POST&HTTP%3A%2F%2Fapi.twitter.com%2Foauth%2Frequest_token&oauth_callback%3Dhttp%3A%2F%2Flocalhost%3A44444%2Faccount%2Fauth%26oauth_consumer_key%3XXXXXXXXXXXXXXXXXXXXXXXXXXX%26oauth_nonce%3DNjM0NzkyMzk0OTk2ODEyNTAz%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1343631900%26oauth_version% 3D1.0 签名密钥只包含我的消费者密钥和一个&符号,因为我还没有令牌秘密(再次,我用虚拟值替换了我的实际消费者密钥): 签名密钥:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX& 最后,我最终获得了以下Authorization标头(同样,虚拟消费者密钥): 的OAuth oauth_callback = “HTTP%3A%2F%2Flocalhost%3A44444%2Faccount%2Fauth”,oauth_consumer_key = “XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX”,oauth_nonce = “NjM0NzkyMzk0OTk2ODEyNTAz”,oauth_signature_method = “HMAC-SHA1”,oauth_timestamp = “1343631900”,oauth_version = “1.0” ,oauth_signature = “ttLvZ2Xzq4CHt%2BNM4pW7X4h1wRA%3D” 我使用的代码如下(它有点长,但我宁愿将其粘贴在此处,而不是给出一个gist URL或其他东西): public class OAuthMessageHandler : DelegatingHandler { private const string OAuthConsumerKey = “oauth_consumer_key”; private const string OAuthNonce = “oauth_nonce”; private const string OAuthSignature = […]

Twitter OAuth请求令牌返回未经授权

我正在尝试从Twitter OAuth获取请求令牌,但我一直得到401 Unauthorized ,但我不知道为什么。 我试图尽可能地遵循签名创建并且在400 Bad Request挣扎了一段时间但最终破解了代码以获得有效请求仅由401满足。 我觉得我错过了一些非常简单但我无法找到的东西。 这是我正在使用的代码: using (HttpClient client = new HttpClient()) { client.BaseAddress = new Uri(“https://api.twitter.com/”); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue(“application/json”)); TimeSpan ts = DateTime.UtcNow – new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); string oauth_nonce = Convert.ToBase64String(new ASCIIEncoding().GetBytes(DateTime.Now.Ticks.ToString())); string oauth_callback = Uri.EscapeUriString(“oob”); string oauth_signature_method = “HMAC-SHA1”; string oauth_timestamp = Convert.ToInt64(ts.TotalSeconds).ToString(); string […]

使用AccessToken使用C#访问JIRA API

我使用https://developer.atlassian.com/display/JIRADEV/JIRA+REST+API+Example+-+OAuth+authentication教程创建了AccessToken,并且可以连接并从jar文件中获取数据。 我需要使用c#app访问它。 我尝试了下面的代码,但它没有用。 var request = (HttpWebRequest)WebRequest.Create(apiUrl); request.Method = “GET”; request.Headers.Add(“Authorization”, “Bearer ” + API_Access_Token); var response = (HttpWebResponse)request.GetResponse(); string html = string.Empty; using (StreamReader reader = new StreamReader(response.GetResponseStream())) { html = reader.ReadToEnd(); } 原始问题是使用api密钥访问JIRA API,没有用户名和密码

简单的C#Evernote API OAuth示例或指南?

有谁知道我在哪里可以找到一个简单的例子C#代码示例? 显然很难找到。 我刚刚开始,得到了我的开发人员密钥。 初始(真正的noob问题/推定) – 可以(应该/必须)我的解决方案是一个Web服务客户端? 我不需要在.Net中安装新的库吗? 基本上,作为测试,我希望能够安全地在私人笔记本中以html的forms呈现单个音符,类似于外部WebSite上的html中的Everfort导出。 提前谢谢了!

你如何使用Windows客户端应用程序中的openAuth?

我正在考虑将公共API集成到现有的Windows窗体应用程序中。 api需要openAuth身份validation。 我见过的所有这些例子都是基于网络的应用程序。 如何在客户端应用程序上使用openAUth? 谢谢

使用DotNetOpenAuth访问Yelp的OAuth 1.0a API

有没有人使用DotNetOpenAuth成功使用DotNetOpenAuth访问Yelp的v2 api ? 在深入了解示例和源代码之后,我就提出了这个问题: public class YelpConnector { private static readonly string YelpConsumerKey = ConfigurationManager.AppSettings[“YelpConsumerKey”]; private static readonly string YelpConsumerSecret = ConfigurationManager.AppSettings[“YelpConsumerSecret”]; private static readonly string YelpToken = ConfigurationManager.AppSettings[“YelpToken”]; private static readonly string YelpTokenSecret = ConfigurationManager.AppSettings[“YelpTokenSecret”]; private static readonly InMemoryTokenManager tokenManager = new InMemoryTokenManager(YelpConsumerKey, YelpConsumerSecret, YelpToken, YelpTokenSecret); private static readonly Uri YelpURLBase = new Uri(“http://api.yelp.com/v2/”); […]

MVC4 OAuth HasLocalAccount方法抛出InvalidOperationException

我有一个MVC4应用程序,它在本地花费调试过程而不启用Register External站点客户端(如twitter等)。 我正在使用自定义成员资格用户和角色提供程序。 但不幸的是,当我浏览“管理”页面时出现此错误: 由于对象的当前状态,操作无效。 并且堆栈跟踪: [InvalidOperationException:由于对象的当前状态,操作无效。] Microsoft.Web.WebPages.OAuth.OAuthWebSecurity.VerifyProvider()+91 Microsoft.Web.WebPages.OAuth.OAuthWebSecurity.HasLocalAccount(Int32 userId)+41 Melk .Controllers.AccountController.Manage(Nullable 1 message) in C:\Users\AmirMehr\documents\visual studio 2010\Projects\Melk\Melk\Controllers\AccountController.cs:141 lambda_method(Closure , ControllerBase , Object[] ) +153 System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters) +14 System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary 2 parameters)+211 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext) controllerContext,ActionDescriptor actionDescriptor,IDictionary 2 parameters) +27 System.Web.Mvc.Async.c__DisplayClass42.b__41() +28 System.Web.Mvc.Async.c__DisplayClass8 1.b__7(IAsyncResult )+10系统 .Web.Mvc.Async.WrappedAsyncResult 1.End() +57 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult) +48 System.Web.Mvc.Async.c__DisplayClass39.b__33() +57 System.Web.Mvc.Async.c__DisplayClass4f.b__49() […]

在linkedin服务器上暂时不可用

我是新手使用linkedin编程并尝试获取一些用户数据,但是我无法进一步了解https://www.linkedin.com/uas/oauth2/accessToken ,我得到了这个响应: {“error”:“temporary_unavailable”,“error_description”:“授权服务器当前无法处理请求:RestException {_response = RestResponse [headers = {X-LinkedIn-Error-Response = true,Content-Length = 6936, X-Restli-Protocol-Version = 1.0.0,Server = Jetty(8.1.8.v20121106)},status = 404,entityLength = 6936]}“} 我使用以下带参数的url: https://www.linkedin.com/uas/oauth2/accessToken?grant_type=authorization_code&code=AQR4LKsR8tswI4o-Ej0bE6vg1fhAZntPuT26CFMFEhZZh7zFkLM7PyxRRp5XEzZ-Y45vIBwZam8zDncMECldDrCSJI8WKNlxrR5gsAcxmkga0ZzIM38&redirect_uri=http://localhost:30731/redirect.aspx&client_id=OAuth用户令牌&client_secret = OAuth的用户秘密 我在C#中得到的错误是服务器是不可用的,它与JSON消息相对应。 有人确实知道解决方案或有相同的错误或解决方案吗?

是否可以作为应用程序进行身份validation而不是使用Facebook C#SDK进行身份validation?

Facebook的OAuth实现允许您作为应用程序(而不是用户)进行身份validation。 是否有可能通过Facebook C#SDK实现这一目标? 丰富

获取Twitter请求令牌失败

我按照http://dev.twitter.com/pages/auth#request-token上的说明进行操作,并开发了ac #class来执行OAuth授权。 我使用了页面上的参数,以及页面上的输出签名基本字符串和签名匹配。 所以我认为算法部分是正确的。 然后我用twitter应用程序中的参数替换了参数,但是我没能从Twitter服务获取请求令牌。 并且响应数据是“无法validationoauth签名和令牌”。 这是我发送的请求(我使用http而不是https进行调试): POST http://api.twitter.com/oauth/request_token HTTP/1.1 Content-Type: application/x-www-form-urlencoded Authorization: OAuth oauth_callback=”http%3A%2F%2Flocalhost%3A3005%2Fthe_dance%2Fprocess_callback%3Fservice_provider_id%3D11″, oauth_consumer_key=”GDdmIQH6jhtmLUypg82g”, oauth_nonce=”QP70eNmVz8jvdPevU3oJD2AfF7R7odC2XJcn4XlZJqk”, oauth_signature_method=”HMAC-SHA1″, oauth_timestamp=”1272323042″, oauth_version=”1.0″, oauth_signagure=”IP%2FEEoc4tKdiobM%2FKH5cPK69cJM%3D” Host: api.twitter.com Proxy-Connection: Keep-Alive 以下是回复: HTTP/1.1 401 Unauthorized Connection: Keep-Alive Connection: Proxy-Support Content-Length: 44 Via: 1.1 APS-PRXY-09 Expires: Tue, 31 Mar 1981 05:00:00 GMT Date: Fri, 08 Apr 2011 05:47:20 GMT Content-Type: text/html; charset=utf-8 […]