- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我似乎无法弄清楚调用 Mendeley 的 authenticated API 的 OAuth 身份验证(请注意,公共(public)方法有一个未维护的 gem here )。
我在他们的门户网站上创建了一个应用程序,它返回一个应用程序消费者 key 和消费者 secret 。我将它们放入一个 YAML 文件中,然后我可以在我的 Ruby 脚本中读取该文件。
cred = YAML.load_file("/home/cboettig/.mendeley_auth.yaml")
key = cred[:consumer_key]
secret = cred[:consumer_secret]
似乎有一个nice example of authenticated call to the Mendeley API using the Faraday gem for authentication here .不幸的是,它似乎没有记录如何为最后的实际调用获取 token (或者它是哪个 token ?)。 (它指向一个关于将 token 生成为 key 的 SHA1 散列的 github 要点,但我找不到使它工作的库依赖项,而且考虑到已经可用于处理 OAuth 的工具数量,它似乎过于复杂了...... .) 这是我对方法 1 的了解:
## Method 1 -- how do I get the token?
key = cred[:key]
secret = cred[:secret]
token = ???? # How to get the token?
mendeley = Mendeley.new(token, secret) # Needs a token
profile = mendeley.get('/oapi/profiles/info/me') # example API call
有一个关于此主题的现有 SO 问题,Mendeley Custom OAuth Strategy ,我也未能成功遵循。它表明这可以使用 Omniauth
来处理,看起来这已经在 omniauth-mendeley
gem 中实现了。不幸的是,我无法判断 the limited documentation 的正反面。 ,这表明是这样的:
## Method 2 --
require 'omniauth-mendeley'
use OmniAuth::Builder do
provider :mendeley, ENV[key], ENV[secret]
end
好的,我可以得到key和secret,但是我的ruby-fu非常有限,我不明白上面的语法。我如何执行它然后对 API 进行函数调用(例如方法 1 尝试中显示的对 profile/me
的调用?尝试运行它只会让我出错
undefined method `use' for main:Object
有任何让这些方法起作用的提示吗?
最佳答案
感谢您在 shazino 博客中提及我的文章。
OAuth 主要用于网络。
这需要两个网站之间进行身份验证。
这就是为什么您不会在网络之外找到任何示例来获取 token 。
在我目前的使用中,我们有一个 iOS 应用程序可以检索 token (我们为此开发了 MendeleySDK)。
它将它提供给我们的服务器,因此我们可以代表用户进行一些 API 调用。
这就是为什么我不需要做 OAuth 舞蹈。
您的方法 2 是可行的方法。 OmniAuth::Builder
是一个 rack middleware .它的语法适用于 config.ru
文件。
尝试创建此文件并将您在示例 2 中演示的代码放在那里。
然后,在您的终端中转到该文件的文件夹并键入 rackup
。
您需要先安装机架 gem。
这应该使用您需要的中间件在端口 9292 上启动 Web 服务器。
有关使用 OmniAuth 中间件的更多信息,请查看 their wiki .
关于ruby - 在 ruby 中获取 OAuth token (用于 Mendeley API),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15887366/
关闭。这个问题需要更多focused .它目前不接受答案。 想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post . 去年关闭。 Improve this questio
我想要一个脚本来查询我的 Mendeley 桌面以获取文章列表。这可能吗(在任何脚本语言中,包括 shell)?我知道有一个 API 可以通过 http 使用,但是当我没有连接到 Internet 时
Mendeley 有一个 Catalog Search -> Search by query API,如下所示: curl ' https://api.mendeley.com/search/cata
我正在尝试使用 Mendeley API 来上传和检索文档和文件,但在使用 files/{file_id} 时遇到了问题。端点。 我有一个用于测试的个人 Mendeley 帐户,其中包含一些 PDF
我有一个 mendeley 帐户,我正在使用他们的在线版本。我创建了一个用户 ID 和客户端 key ,将其保存在 config.yml 文件中并使用它进行身份验证。我正在使用 their websi
我正在阅读来自 here 的 Mendeley 文档.我正在尝试在我的控制台中获取数据,我正在使用教程中的以下代码 from mendeley import Mendeley # These valu
我一直在使用 Mendeley 的 Microsoft Word 插件轻松引用我的 Mendeley 桌面图书馆中的论文。 但是,我注意到 IEEE 格式的引用书目/引文在引用 session 记录和
Mendeley有一个很棒的 API(事实上他们已经使用他们的 API 发起了一场比赛,不过这个问题并不是特定的),它使用 OAuth。 我正在尝试编写一个允许 Mendeley 身份验证的策略,
我目前正在尝试使用 Java 和 net.oauth 库向 Mendeley 进行身份验证。我的目标是从 Mendeley 检索读者数据,并将其添加到我们的学术文档数据库中。 不幸的是,我目前收到 4
使用新的 Mendeley API,似乎不再有办法对文档进行全文搜索。只是没有记录吗?会添加吗?还是永远消失了? 最佳答案 我们目前正在开发全文搜索功能,希望很快就能发布。 关于Mendeley Oa
我最近升级了我的 linux (debian)。从那时起,我的 Mendeley 就无法正常工作:它启动并在几秒钟后开始获取并立即崩溃。 这是它给出的错误信息: Qt WebEngine Plugin
我需要用 Java 中的 Mendeley 创建一个应用程序。但我对 oauth2 的连接有问题。 我使用 Apache Oltu,但如果您知道其他更好的选择,请告诉我。 我有这个: OAuthCli
我似乎无法弄清楚调用 Mendeley 的 authenticated API 的 OAuth 身份验证(请注意,公共(public)方法有一个未维护的 gem here )。 我在他们的门户网站上创
我有一个应用程序在 Mendeley 上与 OAuth1 配合得很好。由于不再支持 OAth1,我必须将我的应用程序迁移到 OAuth2 才能获取数据。 我收到 token 响应,但无法请求任何内容,
我正在尝试编写 Java 代码以使用其文档 API 将文章 PDF 上传到 Mendeley,但我不断收到 500 错误。我是 Java 新手,所以我可能只是使用了错误的代码或库。最终,目标是通过 M
我在工作中在 MacOS 中使用 Mendeley,在家在 Ubuntu 中使用 Mendeley,并且希望将我的库与两台计算机中的 Dropbox 文件夹同步。我知道可以与 Dropbox 同步,但
我是一名优秀的程序员,十分优秀!