使用neovis去连接neo4j图形数据库报错:Neo4jError: Unknown Bolt protocol version: 0
报错图片:
##版本问题:由于本人开发环境为内网开发,所选择的neo4j数据库是JDK8支持的3.5.5版本,但neovis选择的是2.0版本,bolt协议发生变化所以找不到对应版本,经过尝试3版本的数据库使用1.0~1.4版本的neovis.js
使用npm下载neovis不同版本
//下载1.4版本
npm install -save neovis.js@1.4
//下载1.0版本
npm install -save neovis.js@1.0
//下载最新版
npm install -save neovis.js
多尝试几次版本Bolt protocol应该就不存在了,在node_modules/neovis.js/examples/example-labels.html官方示例中尝试一下是否成功
<!doctype html>
<html>
<head>
<title>Neovis.js Simple Example</title>
<style type="text/css">
html, body {
font: 16pt arial;
}
#viz {
width: 900px;
height: 700px;
border: 1px solid lightgray;
font: 22pt arial;
}
</style>
<!-- FIXME: load from dist -->
<script type="text/javascript" src="../dist/neovis.js"></script>
//一般情况下都是有网的 如果没网就随便引一个jquery 版本无所谓
<scriptsrc="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script type="text/javascript">
// define config car
// instantiate nodevis object
// draw
var viz;
function draw() {
var config = {
container_id: "viz",
//地址
server_url: "bolt://192.168.3.3:7687",
//用户名
server_user: "neo4j",
//密码
server_password: "123456",
labels: {
//可不写
},
relationships: {
//可不写
},
initial_cypher: "match (n) RETURN n",
arrows: false
};
viz = new NeoVis.default(config);
viz.render();
console.log(viz);
}
</script>
</head>
<body onload="draw()">
<div id="viz"></div>
Cypher query: <textarea rows="4" cols=50 id="cypher"></textarea><br>
<input type="submit" value="Submit" id="reload">
</body>
<script>
$("#reload").click(function() {
var cypher = $("#cypher").val();
if (cypher.length > 3) {
viz.renderWithCypher(cypher);
} else {
console.log("reload");
viz.reload();
}
});
</script>
</html>