如何将nodejs库集成到我的非nodejs项目中? 我特别需要这个库: https://github.com/greenify/biojs-io-blast
答案 0 :(得分:25)
BioJS使用Browserify CDN自动生成单个JS文件以供使用。要么包括
<script src="http://wzrd.in/bundle/biojs-io-blast@latest"></script>
或通过此链接下载JS文件。
我们还有一个实时JS Bin示例here。
答案 1 :(得分:0)
要集成您使用包管理器NPM https://www.npmjs.com/的任何节点库,以便集成您的库,请执行以下操作
npm install biojs-io-blast
答案 2 :(得分:0)
这是更常见的用例。一些node.js libraby,我非常喜欢它们,我想在任何地方使用它。但是我看到的这个库使用了像fs
这样的node.js的核心模块。我不认为你可以使用它没有节点依赖||节点二进制。但正如 Code Uniquely 或其他人所说,如果您使用webpack作为构建/开发。您可以尝试,browserify or
BioJS
答案 3 :(得分:0)
提供的node_module是一种xml解析器。您无法将nodejs库(node_module)添加到非nodejs程序。您可以根据您使用的编程语言类型获取Blast的xml解析器。
例如: 对于PHP phpBlastXmlParser和 对于java this might helpfull
答案 4 :(得分:0)
是的,您可以使用Publisher / Subscribe模式和Queue库(如RabbitMQ)来实现。
在下面的示例中,作者正在使用每个平台的RabbitMQ客户端与一个NodeJS通信python脚本。
https://github.com/osharim/Communicate-Python-with-NodeJS-through-RabbitMQ
从NodeJS发送的代码:
var amqp = require('amqp');
var amqp_hacks = require('./amqp-hacks');
var connection = amqp.createConnection({ host: "localhost", port: 5672 });
connection.on('ready', function(){
connection.publish('task_queue', 'Hello World!');
console.log(" [x] Sent from nodeJS 'Hello World!'");
amqp_hacks.safeEndConnection(connection);
});
然后,在python中接收:
#!/usr/bin/env python
import pika
import time
connection = pika.BlockingConnection(pika.ConnectionParameters(host='localhost'))
channel = connection.channel()
channel.queue_declare(queue='task_queue', durable=True)
#our callback
def suscriber(ch,method , properties , body):
print "[Y] received %r " % (body,)
time.sleep( body.count('.') )
print " [x] Done"
ch.basic_ack(delivery_tag = method.delivery_tag)
channel.basic_qos(prefetch_count=1)
channel.basic_consume(suscriber, queue = 'task_queue')
print ' [*] Waiting for messages from Python. To exit press CTRL+C'
channel.start_consuming()