问题标签 [reddit-access-token]

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 投票
1 回答
535 浏览

node.js - Reddit 通过 API 投票时给出 403

我已按照Reddit APIWeb app的要求注册为具有范围的 Oauth 访问权限。identity, edit, flair, history, modconfig, modflair, modlog, modposts, modwiki, mysubreddits, privatemessages, read, report, save, submit, subscribe, vote, wikiedit, wikiread

我已授权我的应用程序并已将生成的代码交换为access_token具有3600秒数的有效性。

但是,当我尝试使用 API 对 reddit 提交进行投票时,我得到了一个错误。

{“消息”:“禁止”,“错误”:403}

我试图支持的链接是蒂姆库克警告“数据工业综合体”,呼吁制定全面的美国隐私法

我尝试切换两者bearer,并Bearer根据Reddit API 返回 HTTP 403中的答案,并尝试在尝试从 Reddit API 获取数据时使用 403 错误User-Agent中建议的不同。似乎没有任何工作。

我错过了什么?

0 投票
0 回答
207 浏览

java - Reddit 获取广告报告 API

我正在尝试使用他们的广告 API 从 Reddit 获取帐户报告。

我根据以下内容进行了身份验证:https ://ads-api.reddit.com/docs/#section/Authentication

当我调用报告 API https://ads-api.reddit.com/api/v2.0/accounts/t2_3nkpasz3/reports?start_date=2019-07-16&end_date=2019-07-22&group_by=date时,我得到了错误:

报告 API 文档可在https://ads-api.reddit.com/docs/#tag/Reporting中找到

我该如何解决这个问题?

0 投票
1 回答
31 浏览

oauth-2.0 - 由于查询字符串之前的片段标识符,无法访问 Reddit Api 隐式授权流

我已经非常努力地寻找这个问题的现有答案,因为我觉得我犯了一个愚蠢的错误,所以请让我知道是否已经问过这个问题并且我还没有找到它。

我正在尝试制作一个需要访问 OAuth Reddit API 的小型已安装应用程序,并且由于它已安装,因此必须通过隐式授权流程进行。

这是我尝试使用的过程:

我让用户打开此 URL(已删除私人信息):

https://www.reddit.com/api/v1/authorize?client_id=[client_id]&response_type=token&state=[random_state_data]&redirect_uri=http://localhost:3000&scope=read

但是当用户在授权后被重定向时,它会转到一个如下所示的 URL:

http://localhost:3000/#access_token=[token]&token_type=bearer&state=[random_state_data]&expires_in=3600&scope=read

问题是访问令牌在查询中?片段标识符(#)之后的字符串,因此我无法从托管在端口 3000 上的服务器访问它。我在处理身份验证的方式上是否犯了错误?或者是更微妙的东西?

提前感谢您的帮助,如果您需要更多信息或者我在问这个问题时犯了错误,请告诉我。

0 投票
1 回答
406 浏览

javascript - Reddit 获取 api Oauth 令牌 javascript/react js

我从 reddit OAuth API 获得了 OAuth 代码,但之后尝试获取令牌时出现 401 授权错误。我正在使用邮递员将发布请求发送到https://www.reddit.com/api/v1/access_token

这是我在 Postman 中使用的标题和 POST 正文。

0 投票
1 回答
485 浏览

javascript - 从 reddit api 获取 api 誓言访问令牌

我从 reddit oauth api 成功获得了代码,但是之后尝试获取访问令牌时,我得到了无效的授权(在我以 json 格式发送数据时获得 401 未授权之前)错误。我正在使用邮递员将发布请求发送到https://www.reddit.com/api/v1/access_token这是我在邮递员中使用的标题和表单数据。我正在从邮递员的授权选项卡中发送我的客户端 ID 和密码(尝试发送标头),并使用 x-www-form-urlencoded 发送授权类型、代码和重定向 uri(尝试将它们作为表单数据和 json 发送) . 在标题中,我的内容类型是 x-www-form-urlencoded。如果有人使用过 reddit api,请帮助获取令牌。

0 投票
1 回答
333 浏览

node.js - 无法从 /api/v1/access_token 获取 reddit 身份验证令牌

我目前正在使用 node.js reddit ( https://www.npmjs.com/package/reddit ) 插件,它会自动获取和处理身份验证令牌,但由于某种原因,它对我来说失败了。

使用以下代码:

我尝试寻找问题并最终发现我什至无法通过此处的直接 API url 登录:https ://www.reddit.com/api/v1/access_token

我想这可能与我的唯一用户名(-Arniox-)有关?这基本上是我对这个问题的唯一答案,我似乎无法让它工作。

0 投票
1 回答
294 浏览

javascript - 如何在 Google Apps 脚本上为 Reddit 请求访问令牌

我一直在试图弄清楚如何从Google Apps 脚本中的Reddit API获取访问令牌。到目前为止,我编写了以下代码:

运行上面的代码会收到如下错误(这并不奇怪,因为我仍然需要弄清楚如何传入我的client_idand client_secret):

使用时curl,我能够使用以下命令成功获取令牌:

从到达(示例帖子)开始,我想如果我要将此curl请求转换为POST请求,我需要使用如下格式Authorization向我的参数添加字段:headers

我仍然收到{错误:'unsupported_grant_type'}。

任何人——已经使用 JavaScript 并且最好是使用 Google Apps 脚本成功获取 Reddit 访问令牌的人——可以分享一些建议/见解吗?预先感谢您的回答!

0 投票
0 回答
57 浏览

angular - Reddit OAuth 隐式授权流程是不断征求对每个令牌请求的同意。我究竟做错了什么?

我正在尝试点击 reddit 的授权端点并使用隐式授权流获取访问令牌。到目前为止,我能够使用该令牌获取令牌并检索数据,但问题是每次我发出令牌请求时它都会不断征求同意,即使我已经多次同意。

从 Angular SPA 应用程序我重定向到以下授权端点https://www.reddit.com/api/v1/authorize?client_id=***&redirect_uri=***&scope=***&response_type=token&state=***

我的应用如下所示 在此处输入图像描述

编辑:如果任何人想在这里尝试它是带有实际值的 url。这里使用的客户端 ID 是临时的,一旦我得到解决方案就会删除https://www.reddit.com/api/v1/authorize?client_id=s8VCRwS3HVJruw&redirect_uri=http://localhost:8200/token-callback&scope=read&response_type=token&state =reditt

0 投票
0 回答
179 浏览

javascript - 无法获取 Reddit Oauth 访问令牌,我不断收到 invalid_grant 错误

我正在尝试构建一个 Web 应用程序来总结有用的信息,而我想要添加的其中一件事是 Reddit 小部件。

我花了一整天的时间在 Axios 上苦苦挣扎,因为由于某种原因我的请求不起作用。我只想说我已经在 Kotlin 中使用 Reddit api 构建了一个应用程序,它运行良好,所以我了解 api 和 OAuth 是如何工作的,问题是(我认为)我对 Axios 的理解。

由于我不断收到 { error: 'invalid_grant' } 的事实,我认为问题来自 Axios 对我的请求正文进行编码,因此修改了我用来检索 access_token 的代码。

我有一个前端(Vue.js)和一个后端(Node、Express)。为了提出请求,我使用 Axios。

所以这里是代码逻辑:

  • 前端将客户端重定向到授权页面。
  • 一旦获得授权,我将处理重定向到“http://localhost:8081/oauth_callback”以获取临时代码。
  • 此代码被发送到我尝试检索访问令牌的后端。
  • 我们遇到问题

这是我用来获取访问令牌的函数:

我尝试了相同的请求,使用相同的标头和参数,使用邮递员,它工作正常。

console.log(res) 转储了很多信息,包括:

显然,我在发布之前使用此代码将其撤消。

参数似乎与我遵循的文档一致:https ://github.com/reddit-archive/reddit/wiki/OAuth2#retrieving-the-access-token

对我来说,这里混乱的部分是代码的特殊字符被编码但我不确定因为格式是 application/x-www-form-urlencoded 所以也许它是正常的,也许不是,我不知道。

如果有人可以帮助我让我的代码正常工作,那就太好了。

谢谢

编辑:我解决了这个问题。重定向在 url 的末尾添加了“#_”,因此在代码的末尾...

0 投票
0 回答
39 浏览

access-token - 从刷新令牌 Reddit API 请求访问令牌时出现错误请求 400

最初我通过使用获取reddit api的访问令牌,payload={'grant_type': 'client_credentials', 'duration': 'permanent'}这给了我access_token以及刷新令牌,并通过使用这个刷新令牌,请求access_token,但给了我错误的请求响应。

回复:{'message': 'Bad Request', 'error': 400}