问题标签 [oauth-1.0a]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
355 浏览

java - OAuth1(MCM API)的常量 401 错误

一个多星期以来,我一直在尝试与 API 建立连接,但无济于事。(Magic Card Market's,认证文档在这里那里)。我应该收到一个 XML 文件。

我有 MCM 所谓的对其 API 的“小部件”访问权限,这意味着我没有也不需要授权标头的 oauth_token(它应该是一个空字符串),而且我不应该接收或使用访问令牌/访问密钥。

我唯一拥有的是消费者密钥(他们有时称之为应用令牌)和消费者秘密。

这是我构建授权标头的方式:

实际请求在 AsyncTask 中:

似乎无论我改变什么,我总是得到一个 401。

我尝试过的事情:

  • oauthSignature 作为字符串使用 Base64.encodeToString()
  • 使用 SecureRandom 生成随机数
  • 有和没有空的 oauthToken
  • 另一种时间戳生成方法(不记得是什么)
  • 有和没有应用程序令牌的签名密钥(理论上我只需要消费者秘密,但你永远不知道)
  • 使用 HttpsURLConnection 而不是 HttpURLConnection(URI 以 https 开头,所以我想,嘿。但是没有)
  • 至少 2-3 个其他不同的实现(一个基本上是文档中 Java 示例的复制/粘贴——它现在仍然是一个)
  • (可能很多事情我都不记得了)

此时我想知道问题是否来自我的密钥,因为我尝试使用 Postman 应用程序测试具有相同结果的请求。

0 投票
1 回答
1737 浏览

java - java中的HMACSHA1 oauth_signature

是否可以在不使用库的情况下在 java中生成HMACSHA1oauth_signature ,因此可以使用其他语言(如etc)轻松实现?OAuthConsumersignpostobjective-c

0 投票
1 回答
680 浏览

react-native - 无效签名开放银行项目Oauth1.0a

我正在使用 Open Bank Project 开发一个 React-Native 应用程序,但我不能使用建议的 SDK,甚至不能使用 nodeJS,因为 Oauth1.0 在 RN 中不可用。在通过“/oauth/initiate”和“/oauth/authorize”后,我遇到了访问令牌请求“/oauth/token”的错误签名错误,没有任何问题。

正如此处的文档中所述,在访问受保护的资源之前,我们需要通过 POST 请求获得访问令牌,这给了我错误的签名答案。

这是我的请求代码:

这是签名的请求:

对象{方法:“POST”,形式:对象,标题:对象} 形式:oauth_token:“...” oauth_token_secret:“...” oauth_verifier:“71531”

headers: Authorization: "OAuth oauth_consumer_key="...", oauth_nonce="3UlQ5dx958tibf6lSg0RUGPQFZeV7b8V", oauth_signature="weyE1lFkoIjAErYLKdSi9SDlCZsNBi7%2BuAkLV2PWePo%3D", oauth_signature_method="HMAC-SHA256", oauth_timestamp="1464248944", oauth_token="... ", oauth_token_secret="...", oauth_verifier="71531", oauth_version="1.0""

我尝试过使用和不使用 Oauth_token_secret,还将 oauth_verifier 从正文移动到查询,但具有相同的错误签名结果。

任何想法?谢谢

0 投票
1 回答
234 浏览

django - URL Django 的 OAuth1Session 编码

好吧,我需要一些帮助来解决我认为是一个简单的问题,但是在挖掘了一段时间之后,我会把它留给你们聪明的人来告诉我为什么我不是!

我正在尝试访问提供程序 api,我尝试访问的 URL 是:::.../proposals/AnotherTestProposal/city_furniture/items?filter=description$CONT"Ag" 这是他们希望传递的方式,它应该返回所有描述中包含字符串“Ag”的项目。我知道我目前有两个。

我正在使用 Django 1.9.4 和 requests_oauthlib 创建 OAuth1Session,我也成功地做到了这一点,因为我可以在没有 URL 参数的情况下访问资源。问题是我无法让"?filter=description..."部件正确编码,它给了我一个 401。

当我将 .contents 呈现为 HTML 时,我得到:

这告诉我“AG”部分正在被转义,这是我不想要的。如:我不想要“Ag”,我想要“Ag”。

所以,我的问题是:我怎样才能通过参数传递 URL,所以它们不包含斜杠,因为它们导致 URL 无效,从而使我无法正确访问数据?

其他可能不相关的信息:

  1. 我现在传递给 OAuth1Session 对象的 URL 字符串的参数部分是:'/city_furniture/items%3Ffilter%3Ddescription%24CONT%22Ag%22'

  2. 从 API 网站过滤的示例:proposals/master/roads/items?filter=description$CONT"highway"

  3. 我尝试将“编码”arg 传递给 .get(以更改 to_native_string 使用的编码)但请求拒绝它说它是无效的 arg

根据评论,一些额外的代码。使用函数名称get_protected_code()获取正确传递的 OAuth 信息,然后在views.py

0 投票
1 回答
287 浏览

c# - Twitter请求访问令牌时请求令牌无效:C#

我正在尝试完成使用 twitter 登录的第 3 步。将 OAuth 请求令牌交换为 OAuth 访问令牌。我在第 1 步中收到了一个访问令牌,用户可以在第 2 步中进行授权,这将返回一个 oauth_verifier。我在这一步得到的错误是 401 Unauthorized access: Invalid request token。

非常感谢对我做错了什么的一些见解。

0 投票
1 回答
49 浏览

c# - 我发送到 API 的 XML 文件被编码,如何防止这种情况发生?

我正在使用 API 下载 XML 文件并阅读它,效果很好。

现在我想添加一些东西并上传这个 XML 文件的新版本,但是它被编码并且无法使用 XML 阅读器读取它。它看起来像这样:

%3C%3Fxml%20版本%3D%221.0%22%3F%3E%0D%0A%3C

我知道我可以使用 对其进行编码HttpUtility.UrlDecode,但我希望有一个更好的解决方案,因为 XML 以这种方式存储在服务器上,这不是我想要的。

这是我用来发送请求的代码:

我使用DevDefined.OAuth.Framework.

0 投票
0 回答
114 浏览

java - 是否可以在 Java 而不是 XML 中配置 Spring OAuth1?

我正在尝试使用 Spring 构建 OAuth1 授权服务器。我的 Spring Security 配置是 Java 的,而 OAuth1 的配置是 XML 的。

当我启动服务器时,我收到一条错误消息,提示 No bean named 'org.springframework.security.filterChains'

我认为这是因为 Spring 会首先加载包含 OAuth 内容的 XML 配置,然后再转到 Java 配置。但是找不到它正在寻找的任何东西,因为它还没有被加载。也许。

我想知道是否可以在 Java 中使用 OAuth1 配置而不是在 XML 中?

0 投票
2 回答
723 浏览

ajax - twitter api 未正确验证

我已经使用邮递员通过 twitter api https://api.twitter.com/1.1/statuses/user_timeline.json测试请求,但它给了我

我的标题是-

Authorization:OAuth oauth_consumer_key="MLcGSZNPmn2un5DKbtgnYi8JY",oauth_token="%20751004957898342400-YYpLg5dayAHVkaG47H9NVVkZiE7Z2bc",oauth_signature_method="HMAC-SHA1",oauth_timestamp="1468092744",oauth_nonce="ABCDEFGHIJKLMNOPQRSTUVWXYZ123456",oauth_version="1.0",oauth_signature="fkf0NE2PmDLQZY%2BzMa7gQmA72kU %3D"

邮递员身份验证设置是-

在此处输入图像描述

请建议我如何解决它。

先谢谢了。

0 投票
1 回答
2861 浏览

twitter - RestSharp 中针对 Twitter API GET 和 POST 方法的 OAuth1 身份验证

使用 Postman,我可以API使用 Postman 的 OAuth 1.0 授权成功地使用 Twitter 查询和创建定制的受众。但是,当尝试对 RestSharp 执行相同操作时,出现未经授权的错误。

“UNAUTHORIZED_ACCESS” - “此请求未正确验证”。

我的GET请求验证正常,但 POST 请求失败。

0 投票
3 回答
1568 浏览

react-native - Woocommerce Rest api oAuth1.0a 身份验证错误

我正在开发一个 react native 项目,我需要在 woocommerce rest api 的帮助下创建一个应用程序来显示产品和订单。

我正在发出自己的 oauth 请求来获取 json 数据,因为 react native 不支持加密 npm 模块,因此我不能使用 oauth 管理器和 woocommerce-api npm 模块。

我根据 woocommerce 的官方文档对请求所需的所有参数进行了编码。

http://woocommerce.github.io/woocommerce-rest-api-docs/#authentication-over-http

以下代码发出身份验证请求。

每次我提出请求时,都会收到以下错误。

无论我做什么,最终结果总是这个错误。