如何在大气中编辑不在GitHub上的Meteor包?

时间:2015-07-18 00:03:23

标签: node.js twitter meteor oauth npm

我有一些我正在处理的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上。我如何弄清楚它的存在位置和/或我是否可以在本地访问它并修改它和/或在线找到一些存储库?气氛并没有提供太多的帮助,没有提供这个包实际下载的链接吗?

mrt:twit的链接:https://atmospherejs.com/mrt/twit

ttezel/twit的链接:https://github.com/ttezel/twit

编辑:我正在使用Meteor 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的{​​{1}}文件夹旁边,其中所有文件都是.node_version,这是我要使用的Node版本假设。那不会强迫"那个包装版本当时出来了吗?如果是这样,那么可能是设置v0.10.20以使用1.1.9。

我的原始帖子问题仍然存在,我在哪里可以在服务器上找到ttezel/twit所以我可以分叉/编辑它而不必在本地编辑代码?

2 个答案:

答案 0 :(得分:1)

我通过电子邮件发送了大气的创作者(percolatestudio.com),汤姆真的很有帮助,并指出了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做了拉取请求,所以希望作者更新它 - 因为这是Meteor的头号Twitter API包,下载量为1,200。似乎更好地更新它而不是发布我自己的版本。

在此之前,我根据以下链接创建了一个本地包,一切都运行良好 - 包括仅应用程序身份验证。感谢您的评论 - 他们很有帮助。我在Meteor和包装系统的运作方式上仍然很陌生。

http://www.webtempest.com/meteor-js-packages-tutorial

如果您想访问更新的软件包,我在以下链接中创建了它,但它不是已发布的meteor软件包 - 因此您必须下载并在本地使用它:< / p>

https://github.com/evolross/meteor-twit

答案 1 :(得分:0)

您应该检查.meteor/local/*个文件夹。

我在.meteor/local/build/programs/server/packages

中有很多包文件

我担心它已全部编译完毕,但您可以获取所需的一些代码并制作自己的软件包。