2015-01-19 2 views
0

Я создаю приложение-узел, в котором используется плагин npapi. в основном я пытаюсь сделать так, если устройство или браузер, который подключается к серверу, не поддерживает плагин, он будет возвращаться на сервер. В настоящее время у меня есть работа вокруг, как это работает, однако она требует открытия нового окна на главном компьютере, когда запрос отправляетсяиспользовать плагин NPAPI с узлом

(обходной путь)

var open = require('open'); 
var jobs = []; 
router.get('/nsjob', function(req, res, next){ 
    var job = { 
      id:(jobs.length > 0) ? jobs[jobs.length - 1].index + 1:0, 
      xml://xml, 
      params://params, 
      callback:function(err, data){ 
       if(err) 
        return next(err); 
       res.send(data); 
      } 
     }; 
    open('http://localhost:3000/handleJob/' + job.index); 
}); 
router.get('/handleJob/:id', function(req, res){ 
    var job; 
    for(var i in jobs){ 
     if(jobs[i].index === req.params.id){ 
      job = jobs[i]; 
      break; 
     } 
    } 
    res.render('hjob', job') 
}); 
router.post('/completedJob/:id', function(req, res){ 
    var job; 
    for(var i in jobs){ 
     if(jobs[i].index === req.params.id){ 
      job = jobs[i]; 
      break; 
     } 
    } 
    if(req.body) 
     job.callback(req.body.err, req.body.data); 
    else 
     job.callback(null, null); 
    res.end(); 
}); 

это работает все хорошо, но походит на очень плохой способ сделать это, но мне нужен этот вариант резервного копирования, но практически невозможно использовать главный компьютер, пока мобильные устройства работают на сервере. если бы я мог загружать плагины NPAPI на узел, я мог бы изменить api, чтобы не использовать dom и, по сути, не открывать окно на главном компьютере. однако я не могу найти способ сделать это в узле NOT NODE-WEBKIT (пока он не будет отправлен на мобильный телефон, в этом случае он бесполезен, так как в основном это используется мобильными пользователями.

ответ

0

Вы можете гипотетически написать узел модуль, который будет загружать плагин NPAPI, но это было бы очень сложно. Для этого определенно не существует готового решения.

FireBreath 2.0 будет поддерживать новый протокол, который, вероятно, может быть использован для этого, но он все еще находится в раннем планировании Я не ожидаю каких-либо выпусков в течение как минимум месяца или двух.

+0

Я смотрел на это, однако я не могу найти много информации об обработке плагинов npapi. Я сделал пару n ode-webkit, которые созданы для обеспечения прозрачности. Его не чисто, но он работает, однако я бы хотел найти более надежное решение – Snymax

+0

, вы также не найдете много информации. Это не что-то широко сделанное; Я бы сказал, что в мире менее 10 человек (конечно, менее 20) с опытом работы с NPAPI, чтобы сделать это без огромных хлопот, и никто из нас особо не хочет этого делать. , который должен вам что-то сказать. То, что вы хотите сделать, это не очень хорошая идея, и я не рекомендую вам попробовать. Найдите лучшее решение. – taxilian

+0

не только то, что его нужно постепенно прекратить, поэтому я хотел бы упаковать решение ... по крайней мере, пока не появится новый драйвер. – Snymax

Смежные вопросы