我有一些正在使用的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/twit

ttezel/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/

10-13 05:16