我有一些正在使用的Twitter功能,我想使用“仅应用程序身份验证”,它仅需要我的Twitter应用程序凭据即可在我的应用程序中执行GETS(例如,基于用户输入的标签进行的随机推文搜索,等等)-否实际用户发布。)
Twitter支持此功能,但Atmosphere和NPM上的大多数Twitter软件包均不支持。它们会迫使您同时传递应用程序凭据和OAuth令牌,如果不传递,则请求将返回无效。最流行的名为mrt:twit
的Meteor Twitter API程序包实际上包装了NPM程序包ttezel/twit
,该程序实际上正确地实现了仅应用程序身份验证,但是Meteor mrt:twit
的包装程序包迫使您使用完全身份验证,这需要用户的OAuth令牌,不想或不需要使用。因此,我想编辑mrt:twit
以正确遵循ttezel/twit's
界面。
但是,mrt:twit
软件包不在GitHub上。我如何确定它的存放位置和/或是否可以在本地访问它并对其进行修改和/或在网上找到它的存放位置?如果没有从该软件包实际下载的位置提供链接,Atmosphere不会提供太多帮助?mrt:twit
的链接:https://atmospherejs.com/mrt/twitttezel/twit
的链接:https://github.com/ttezel/twit
编辑:我正在使用流星1.1.0.2。我能够找到mrt:twit
在本地的位置。它在:.../.meteor/local/build/programs/server/packages/
经过调查,并不是说mrt:twit
没有正确地“实现” ttezel/twit's
接口,而是因为mrt:twit
使用/要求使用旧版本的ttezel/twit
,即1.1.9版本,而不是当前的2.1.0版本。旧版本的ttezel/twit
不支持“仅应用程序”授权-我可以在代码中看到它。因此,我上面的原始问题。 ttezel/twit
下载到以下文件夹:.../.meteor/local/build/programs/server/npm/mrt_twit/node_modules/twit
在上面的文件夹中,我看到了ttezel/twit
的完整.git软件包,但它的版本为1.1.9。因此,我想我可以用最新版本的ttezel/twit
2.1.0替换此文件夹,但是我认为您不必弄乱node_modules
文件夹中的任何内容,对吗?不应在某处编辑配置文件?
对于我一生,我找不到在哪里使用mrt:twit
声明使用1.1.9版。在所有代码中,它仅调用Npm.require('twit')
。我找不到可以将版本设置为1.1.9的配置文件。我唯一发现的是位于twit
文件夹旁边名为.node_version
的第二条路径中的文件,其中所有文件都是v0.10.20
,这是我认为要使用的Node版本。那不会“强迫”当时发布的任何软件包版本吗?如果是这样,那可能就是将ttezel/twit
设置为使用1.1.9的原因。
但是,我原来的帖子问题仍然存在,我可以在服务器上的哪里找到mrt:twit
,以便可以对其进行分叉/编辑,而不必在本地编辑代码?
最佳答案
我通过电子邮件发送了Atmosphere(percolatestudio.com)的创建者,Tom确实很有帮助,并向我指出了mrt:twit
在GitHub上的位置。在旧的1.0气氛中:
https://old-atmosphere.meteor.com/package/twit
该页面指向实际的GitHub位置,即:
https://github.com/subhog/meteor-twit
因此,以上链接是从当前mrt:twit
软件包下载到您的Meteor应用程序中的地方(如果您将其添加到您的应用程序中)(撰写本文时)。一旦发现可以轻松地在package.js
文件中看到它,便声明为Npm.depends({twit: "1.1.9"})
。附带说明一下:如果当前版本的Atmosphere将您指向较旧/旧版软件包的GitHub位置,它将如何处理新软件包,将是一个很好的选择。
因此,我能够对此进行分叉并更新软件包以使用ttezel/twit
的2.1.0版本。我向mrt:twit
发出了请求请求,因此希望作者对此进行更新-因为这是流星的第一个Twitter API程序包,具有1200次下载。似乎更新它比发布我自己的版本更好。
在此之前,我通过以下链接制作了一个本地程序包,并且一切正常,包括仅应用程序身份验证。感谢您的评论-他们很有帮助。我在Meteor以及包装系统如何运作方面还很陌生。
http://www.webtempest.com/meteor-js-packages-tutorial
如果您想访问更新的程序包,请在以下链接中找到它,但它不是已发布的流星程序包-因此,您必须下载并在本地使用它:
https://github.com/evolross/meteor-twit
关于node.js - 如何从Atmosphere编辑不在GitHub上的Meteor软件包?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31486413/