Meteor:通过DDP验证Chrome扩展程序

时间:2014-12-10 06:34:01

标签: javascript google-chrome-extension oauth meteor ddp

我已经构建了一个Chrome扩展程序,它可以选择文本,当我右键单击并选择上下文菜单项时,它会将该文本发送到我的Meteor应用程序。这很好,但是,我无法弄清楚使用Oauth验证用户的过程。

我正在使用此套餐:https://github.com/eddflrs/meteor-ddp

以下是background.js中的JS(适用于Chrome扩展程序):

var ddp = new MeteorDdp("ws://localhost:3000/websocket");

    ddp.connect().then(function() {
        ddp.subscribe("textSnippets");

        chrome.runtime.onMessage.addListener(function(message) {
            ddp.call('transferSnippet', ['snippetContent', 'tag', snippetString]);
        });
    });

以下是我的Chrome扩展程序中其他JS文件的相关部分:

function genericOnClick(info) {
    snippetString = [];
    snippetString.push(info.selectionText);
    var snippetTag = prompt('tag this thing')
    snippetString.push(snippetTag);

chrome.runtime.sendMessage(snippetString);
}

以下是我的Meteor应用程序的相关部分:

'transferSnippet': function(field1, field2, value1, value2) {
    var quickObject = {};
    quickObject.field1 = value1[0];
    quickObject.field2 = value1[1];

    TextSnippets.insert({
        snippetContent: value1[0],
        tag: value1[1]
    });

}

基本上我已经卡住了,并且不知道如何进行DDP通话,该通话会与我的Meteor应用程序通话以验证用户身份

1 个答案:

答案 0 :(得分:1)

这个问题有点陈旧,但如果有人还在寻找解决方案。我有一个类似的问题,我可以使用以下插件解决:https://github.com/mondora/asteroid。以下是如何为twitter oauth执行此操作的示例: https://github.com/mondora/asteroid/issues/41#issuecomment-72334353